如何快速定位JVM中消耗CPU最多的线程? Java 性能调优

 

 

https://mp.weixin.qq.com/s/ZqlhPC06_KW6a9OSgEuIVw

 

 

 

 

 

 

上面的线程栈我们注意到 nid 的值其实就是线程 ID,它是十六进制的,我们将消耗 CPU 最高的线程18250,转成十六进制0X47A,然后从上面的线程栈里找到nid=0X47A的线程,其栈为:

"Busiest Thread" #28 prio=5 os_prio=0 tid=0x00007fb91498d000 nid=0x474a runnable [0x00007fb9065fe000] java.lang.Thread.State: RUNNABLE at Test$2.run(Test.java:18)

 

posted @ 2018-05-21 01:42  papering  阅读(292)  评论(0编辑  收藏  举报