目的:查看线程消耗

第一步: top 查看当前消耗最高的CPU , #top

linux 查询进程 线程CPU消耗

如图:查到ORS的CPU消耗最高, 进程号552

第二步: 查看当前进程消耗CPU最高的线程

可以采用两种方式

1 # top -H -p 552   或者ps H -e -o pid,tid,pcpu,cmd --sort=pcpu |grep ORS

前一个命令的结果

linux 查询进程 线程CPU消耗

后一个命令的结果

linux 查询进程 线程CPU消耗

 

查看到线程号563, 3817, 3828消耗最高

第三步: GDB调试  #gdb

1. 进入当前进程552 

(gdb) attach 552

1. 查看线程信息

(gdb) info thread

linux 查询进程 线程CPU消耗

找到当前对应线程61

3 :进入线程 并查看堆栈信息

(gdb) thread 61

(gdb) bt

linux 查询进程 线程CPU消耗

 

当然也可以使用命令#pstack 563

参考: https://blog.csdn.net/lightjia/article/details/81186532

             https://blog.csdn.net/hrn1216/article/details/51426741

           https://blog.csdn.net/madpointer/article/details/8856677

 

 

 

 

 

相关文章: