12 Thread Dump特点
1 能在各种 *** 作系统下使用
2 能在各种Java应用服务器下使用
3 可以在生产环境下使用而不影响系统的性能
4 可以将问题直接定位到应用程序的代码行上
13 Thread Dump 能诊断的问题
1 查找内存泄露,常见的是程序里load大量的数据到缓存;
2 发现死锁线程;
14如何抓取Thread Dump
一般当服务器挂起,崩溃或者性能底下时,就需要抓取服务器的线程堆栈(Thread Dump)用于后续的分析 在实际运行中,往往一次 dump的信息,还不足以确认问题。为了反映线程状态的动态变化,需要接连多次做threaddump,每次间隔10-20s,建议至少产生三次 dump信息,如果每次 dump都指向同一个问题,我们才确定问题的典型性。
有很多方式可用于获取ThreadDump, 下面列出一部分获取方式:
*** 作系统命令获取ThreadDump:
Windows:
1转向服务器的标准输出窗口并按下Control + Break组合键, 之后需要将线程堆栈复制到文件中;
UNIX/ Linux:
首先查找到服务器的进程号(process id), 然后获取线程堆栈
1 ps –ef | grep java
2 kill -3 <pid>
注意:一定要谨慎, 一步不慎就可能让服务器进程被杀死。kill -9 命令会杀死进程。
以上就是关于如何用Jstack把java进程中的堆栈信息输出到全部的内容,包括:如何用Jstack把java进程中的堆栈信息输出到、、等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)