天天看点

CPU占用过高的定位分析CPU占用过高的定位分析

CPU占用过高的定位分析

结合JDK和Linux命令来看

1.在linux环境中使用top命令找到使用CPU的线程

top
           

2.使用ps -ef或者jps进一步定位,得知后台程序给我们惹了什么样的麻烦

ps -ef|grep java|grep -v grep
jps -l
           

3.定位到具体线程和代码

ps -mp 进程ID  -o THREAD,tid,time :哪一个线程耗费了多少时间
           

4.将需要的线程ID转化为16进制格式(英文格式小写)

print“%x\n” 有问题的线程ID
           
jstack  进程ID | grep tid(16进制线程ID的英文小写)- A60