1、首先使用 top 命令查看占用情况
top
2、接着只用 P 指令对进程进行按CPU占用排序
3、找到进程ID,也就是第一列的数字,记住这个数字
4、使用 top -Hp [进程ID] 查看进程中线程的占用情况
top -Hp [进程ID]
5、通过上一步能得到占用较高的线程ID
6、通过 jstack [进程ID] > jstack.log 储存输出
jstack [进程ID] > jstack.log
7、通过 printf "%x\n" [线程ID] 得到16进制线程ID
printf "%x\n" [线程ID]
8、搜索 jstack.log 中的16进制线程ID,就能找到高占用的原因了。
