现在的位置: 首页 > 综合 > 正文

linux下查出cpu占用过高线程

2013年08月01日 ⁄ 综合 ⁄ 共 283字 ⁄ 字号 评论关闭

http://mnt.conf.blog.163.com/blog/static/115668258201211734032988/

首先利用top命令,按P,以cpu使用率从高至低排序

linux下查出cpu占用过高线程 - zhm - 张传猛的博客

 

 

然后利用ps aux | grep PID命令可以判断是tomcat 出了问题


但要定位到具体线程或者代码,还需要下面的操作

首先显示线程列表:
ps -mp pid -o THREAD,tid,time

linux下查出cpu占用过高线程 - zhm - 张传猛的博客

 linux下查出cpu占用过高线程 - zhm - 张传猛的博客

找到了耗时最高的线程32720,占用CPU时间快半个多小时了

然后将需要的线程ID转换为16进制格式:

printf "%x\n" tid


最后打印线程的堆栈信息:

jstack pid |grep tid -A 60

抱歉!评论已关闭.