怎么通过linux命令去分析jvm里面那个线程阻塞了

2025-04-13 00:48:28
推荐回答(1个)
回答1:

仍然需要生成jvm进程的thread dump data,便于与Linux top命令输出关联。步骤如下:
1)执行top命令,或使用-H选项(显示所有线程),找到相关的高CPU的PID
2)生成thread dump 快照(kill -3 PID)。
3)将top命令输出PID转换为HEX格式(16进制)
4)在thread dump data中搜索nid=
5)分析受影响的thread和stack trace,精确定位代码。
top output sample

[plain] view plain copy
PID USER PRI NI SIZE RSS SHARE STAT %CPU %MEM TIME COMMAND
...........
22111 userWLS 9 0 86616 84M 26780 S 0.0 40.1 0:00 java