查看JAVA進程中哪一個線程CPU消耗最高

一,在centos linux 上查看進程佔用cpu太高

top 
shift+h
查看哪一個進程程消耗最高
 
 

二,查看JAVA進程中哪一個線程消耗最高

 
2.1 導出java運行的線程信息
 
jstack 進程id(jps查看)
jstack 進程id > ps.txt
jstack -l 進程id (窗口打印)
 
 
//另外還有一種方式
 
若是啓動方式以下:
nohup java -classpath conf/:my.jar  com.tank.manClass>./log.out 2>&1 &
 
則執行:  kill -3 PID,進程信息會輸出到/ log.out 
 
 
 
 
2.2 查找最消耗cpu的java線程
 
jps
找到java進程PID
命令:ps -mp  pid -o THREAD,tid,time   或者  ps -Lfp  pid
 
經過%CPU和 TIME,判斷佔用的線程TID
 
找到TID,轉換成16進制,而後在上面(jstack 進程id > ps.txt)導出的文件中搜索,就能夠定位到具體的線程,類。
相關文章
相關標籤/搜索