第一步,使用 top 找到占用 CPU 最高的 Java 进程
1. 监控cpu运行状,显示进程运行信息列表
top -c
(按CPU使用率排序,键入大写的P)
第二步,用 top -Hp
命令查看占用 CPU 最高的线程
top -Hp pid
(然后键入P (大写p),线程按照CPU使用率排序)
第三步,查看堆栈信息,定位对应代码
# param1:第二步得到的结果
printf "%x\n" param1
第四步通过jstack命令查看堆栈信息
# param1:第一步得到的进程,param2:第三步得到的结果
jstack param1 | grep '0xparam2' -C10 --color