jstack分析CPU高的问题

一、jstack 命令参数

jstack分析CPU高的问题_第1张图片

二、jstack解决问题

1、死循环导致cpu飙高

死循环的例子:https://blog.csdn.net/goldenfish1919/article/details/8755378

步骤:查找进程-》查找线程-》分析threadDump日志-》找出问题代码

a、查看cpu高的java进程

top  // linux下的命令

b、生成进程下所有线程的栈日志

jstack 1721 > 1721.txt

c、查看进程下哪些线程占用了高的cpu

top -p 1712 -H

d、将十进制pid转换为十六进制的pid

printf “%x” 8247

2037

2、死锁问题定位

jstack分析CPU高的问题_第2张图片

3、thread dump日志分析

jstack:
https://docs.oracle.com/javase/8/docs/technotes/tools/unix/jstack.html
java线程的状态
https://docs.oracle.com/javase/8/docs/technotes/guides/troubleshoot/tooldescr034.html
java线程状态转化:
https://mp.weixin.qq.com/s/GsxeFM7QWuR–Kbpb7At2w
https://blog.csdn.net/mynamepg/article/details/81630487
死循环导致CPU负载高
https://blog.csdn.net/goldenfish1919/article/details/8755378
正则表达式导致死循环:
https://blog.csdn.net/goldenfish1919/article/details/49123787
 

你可能感兴趣的:(工作常用,jvm,Java)