一、jstack 命令参数
二、jstack解决问题
1、死循环导致cpu飙高
死循环的例子:https://blog.csdn.net/goldenfish1919/article/details/8755378
步骤:查找进程-》查找线程-》分析threadDump日志-》找出问题代码
a、查看cpu高的java进程
top
b、生成进程下所有线程的栈日志
jstack 1721 > 1712.txt
c、查看进程下哪些线程占用了高的cpu
top -p 1712 -H
d、将十进制pid转换为十六进制的pid
printf "%x" 8247
2037
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