- 先用top定位最耗cpu的java進程 例如: 12430
工具:top或者 htop(高級)
方法:top -c 顯示進程運行詳細列表
鍵入 P (大寫P),按照cpu進行排序 - 然后用top -p 12430 -H 定位到最耗cpu的線程 的ID 例如:12483
工具:top
方法:top -Hp 1865 ,顯示一個進程的線程運行信息列表
鍵入P (大寫p),線程按照CPU使用率排序 - 把第二步定位的線程ID,轉成16進制,printf “%x\n” 12483 得到 :30c3
工具:printf
方法:printf “%x\n” 2747 - 從jstack 輸出的線程快照中找到線程的對堆棧信息 jstack 12430 |grep 30c3 -A 60 |less
工具:pstack/jstack/grep
方法:jstack 10765 | grep ‘0x2a34’ -C5 --color`
