top命令定位CPU高占用代码

Posted bluemilk

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了top命令定位CPU高占用代码相关的知识,希望对你有一定的参考价值。

步骤如下:

1.使用top命令定位异常进程。可以看见12836的CPU和内存占用率都非常高
技术图片

2.使用top -H -p 进程号查看异常线程
技术图片

3.使用printf "%x\n" 线程号将异常线程号转化为16进制
技术图片

4.使用jstack 进程号|grep 16进制异常线程号 -A90来定位异常代码的位置(最后的-A90是日志行数,也可以输出为文本文件或使用其他数字)。可以看到异常代码的位置。
技术图片

以上是关于top命令定位CPU高占用代码的主要内容,如果未能解决你的问题,请参考以下文章

Java如何定位占用CPU比较高的问题

Linux TOP命令按内存占用排序和按CPU占用排序

cpu故障定位 top strace pstack

Java线上应用故障之CPU占用高排查与定位

线上CPU 占用300%多-故障解决

面试问题---JAVA程序CPU占用过高怎么定位