JVM 调优实战--使用jstack分析线程执行情况

目录


jstack的使用

线程的6种状态

使用jstack分析死锁示例


jstack的使用

jstack命令可以直接输出每个线程的执行情况。

线程的6种状态

超时等待状态和等待状态的区别:

超时等待状态时间一到就会自动恢复成运行态;

等待状态需要其他线程notify唤醒之后才会进入运行态;

等待态会自动释放资源,包括锁。

使用jstack分析死锁示例

将程序代码放到Linux上运行: 

 

使用jstack命令进行分析:jstack 9043

Found one Java-level deadlock:

发布了824 篇原创文章 · 获赞 369 · 访问量 79万+

猜你喜欢

转载自blog.csdn.net/a772304419/article/details/103999045