如何找到 最耗费资源的 java 线程

1.$ jps 找出java 进程===》 ps -ef|grep 15460 排查线程,找到目标进程

如何找到 最耗费资源的 java 线程

2.$ ps -mp 15460 -o THREAD,tid,time | sort -k2 -r | head -n 20

找到该线程使用CPU 最高的线程

如何找到 最耗费资源的 java 线程

3. 进入堆栈中查看,例如tid=16132 -->换算16进制=3F04;执行  $ jstack 15460 | grep "0x3F04" -A 10 ,即可得到堆栈日志

如何找到 最耗费资源的 java 线程