參考鏈接:https://blog.csdn.net/u010076603/article/details/90296982
1. 查看cpu占用高的進程
命令:top
這里<pid>是22154
2.查看該進程下哪個線程占用cpu過高
命令:top -Hp <pid>
此處命令:top -Hp 22154
此處取線程pid是:22862
3.查看該線程的狀態
命令: jstack <進程pid> |grep -i -B 10 -A 50 <16進制線程pid>
說明:-i 表示忽略大小寫; -B 10 找到關鍵字262b顯示其前10行; -A 50 找到關鍵字262b顯示其后50行;
此處命令: jstack 22154|grep -i -B 10 -A 50 594e # 594e是22862轉換成16進制得到
4.waiting后面的內容就是導致waiting的代碼,這個后面需要讓開發一起看下。