Linux-cpu100%排查

1.找到最耗CPU的进程:top命令查看进程运行信息列表,键入P (大P),进程按照CPU使用率从高到低排序。
Linux-cpu100%排查
2. 找到最耗CPU的线程:top -Hp 进程PID命令查看该进程下所有的线程,键入P (大P),进程按照CPU使用率从高到低排序。
Linux-cpu100%排查
3.将线程PID转化为16进制:printf “%X\n” 线程PID。是因为堆栈里,线程id是用16进制表示的(十进制6524转换为十六进制就是197c)。
Linux-cpu100%排查
4.查看堆栈,找到线程:jstack 进程PID |grep 线程PID转换后的16进制 -C10(显示匹配行前后各10行) --color。例如:jstack 6505 |grep 0x197c -C10 --color,看到了该线程(Thread-9)正在执行代码的堆栈。
Linux-cpu100%排查

测试代码:
Linux-cpu100%排查