标签:关键字 code 线程 jvm 进制 class 十六进制 如何快速 int
第一步、先找出Java的进程PID
ps -ef | grep 进程名关键字
第二步、找出该进程内最消耗CPU的线程
top -Hp 12345 17183 log4x 20 0 4292820 529812 23040 R 94.7 0.8 1:11.79 java -server -Xms268435456 -Xmx268435456 17162 log4x 20 0 4292820 529812 23040 R 87.1 0.8 1:17.90 java -server -Xms268435456 -Xmx268435456 17172 log4x 20 0 4292820 529812 23040 R 86.1 0.8 1:16.26 java -server -Xms268435456 -Xmx268435456 17176 log4x 20 0 4292820 529812 23040 R 68.0 0.8 1:12.31 java -server -Xms268435456 -Xmx268435456 17170 log4x 20 0 4292820 529812 23040 S 7.3 0.8 0:44.70 java -server -Xms268435456 -Xmx268435456
第三步、将线程编号转换成十六进制
[root@test185 ~]# printf "%x\n" 17183 431f
第四步、用jstack PID打印出进程内所有的线程堆栈
jstack 12345 > 12345.txt
第五步、根据线程的十六进制编码,在堆栈文件中定位具体的线程堆栈。
nid=0x431f
标签:关键字 code 线程 jvm 进制 class 十六进制 如何快速 int
原文地址:https://www.cnblogs.com/steven-note/p/9052222.html