通俗一點:找到進程,找到下面的線程,找到線程正在作的事,分析線程正在作的事。java
1、查看cpu佔用高的進程 spa
top命令能夠查看(假設%cpu已經屬於很高了,咱們對其分析)線程
咱們獲得了 java 的進程idblog
2、找到主進程下面的線程進程
top -Hbp 16661 | awk '/java/ && $9>1' $9>1 是第9列數值大於1(我這裏只能這麼低。。。固然1是很是低的,這裏只是個演示)awk
咱們這裏發現17000這個線程出現的機率最高,咱們對這個線程進行分析。im
3、查看這個線程正在作的事d3
printf "%x\n" 17000 將17000的線程id轉換爲16進制的線程idcpu
以後進行主要分析以 ‘-’ 開頭的行(嗯,大概吧)top
而後進行分析.................