使用ProcessExplorer分析占用CPU过高的Java线程
一、使用ProcessExplorer查看进程的线程信息,如截图
由上图我们可知道线程4396和1956两个线程CPU占用率比较高(系统没有一个用户使用的情况下),使用计算器将线程4396和1956转换为16进制,为112C和7A4
二、使用Java自带的jstack命令导出线程dump
命令:jstack 3092 > jstack.txt
jstack命令更多介绍,请参考Java性能调优工具——Jstack
三、在jstack.txt中查找112C和7A4,查找结果如下截图
既然定位到了哪段代码CPU占用率非常高,接下来的事情就不用明说了…