一、首先通过top指令查看当前占用CPU较高的进程pid
二、查看当前进程消耗资源的线程PID: top -Hp pid
使用 top -Hp <pid> 命令(pid为Java进程的id号)查看该Java进程内所有线程的资源占用情况。
三、通过print命令将线程pid转为16进制
printf "%x\n" tid(tid指线程的id号)将以上10进制的线程号转换为16进制
四、通过jstack命令,查看栈信息,定位到线程对应的具体代码。
jstack <pid> |grep -A 200 <tid> (pid为Java进程的id号,tid为线程16进制线程id)