Java的工具集至關強大,學習成本也很低,處理線上問題時,jstack這個工具就比微軟的windbg,好學好用不少,3步找出佔用CPU很高的源所在。而windbg反人類的各類命令,實在不敢恭維。網絡
故意設置了一個CPU佔用很高的場景:工具
排查問題,步驟:學習
1. ps -mp 【替換爲進程ID PID】 -o THREAD,tid,time線程
發現線程632二、6323佔用CPU很高,時間也很長。3d
2. printf 「%x」 【線程ID TID】blog
把TID轉換爲16進制。進程
3. jstack 【進程ID PID】 | grep 【線程ID十六進制】 -A 10 -B 10grep
利用jstack工具,查看先後10行,發現問題所在!im
代碼中故意設置:db
4. 重複二、3,查看另外一個線程。
----
附錄:要訪問本身的Virtual Box,網絡設置要調整爲: