按cpu占用率排序:(直接定位到占用CPU最大的进程-线程)
ps Hh -eo pid,tid,pcpu |sort -nk3|tail
1、ps -ef | grep java 获得进程id
2、top -H -p pid 所有该进程的线程都列出来了。看看哪个线程pid占用最多,然后将这个pid转换为16进制,如 44bf,注意要小写3、jstack pid | grep -C 10 'nid=0x1a2f' -A 前 -B 后 -C 前后
譬如某个CPU占用率达到100%了,可能程序死循环了,或者其他什么原因,利用上面的方法就可以查到是什么地方的代码有问题。