39 Linux查看哪个线程占用CPU最高方式
在开发中,我们不免会遇到某个程序占用CPU很高的情况,我们可能可以用top命令查看到是该进程的某个线程CPU占有率高的很,通过top命令后,再按h键便可查看对应的线程号,如下图示:

按下h键后:

现在知道了那个占用cpu最高的线程ID,下一步是要找出是哪个线程,此时我们可以实用gdb调试工具得到相关信息!用gdb attach 173,然后输入命令:thread apply all bt,把所有线程栈信息打印出来。
# gdb attach 173
# thread apply all bt
可以看到,178对应的线程是关于jvtHttpServer_task线程的。

over!
本文介绍在Linux环境中如何使用top命令结合gdb调试工具来定位导致高CPU占用的具体线程。首先通过top命令找到高CPU占用的进程,然后利用gdb的threadapplyallbt命令获取详细线程信息,最终定位到问题线程。
537

被折叠的 条评论
为什么被折叠?



