java - 死锁线程检查

标签 java multithreading

有人能告诉我如何找出 Java 多线程应用程序中“有多少线程处于死锁状态”吗?如何找出死锁线程列表?

听说过 Thread Dump 和 Stack Traces,但不知道如何实现。

  • 我还想知道 Java 5 中针对线程引入了哪些新特性?

请将您的意见和建议告诉我。

最佳答案

thread dump获取方式:

  • ctrl-break (Windows) 或 ctrl-\,在 Linux/UNIX 上可能是 ctrl-4 和 kill -3
  • jstack 和您的进程 ID(使用 jps)
  • jconsolevisualvm
  • 几乎任何调试器

J2SE 5.0(2004 年发布,服务生命周期结束)中的主要新线程功能:

  • java.util.concurrent
  • 新的 Java 内存模型。

关于java - 死锁线程检查,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/883936/

相关文章:

java - 倒计时和进一步同步

java - 使用java屏蔽某个网站

java - 为什么这段代码是顺序执行的?

java - ResourceBundle同时读取2个Properties文件

java - 如何在需要时停止或终止java中的while循环

c++ - 删除的构造函数

python - 我无法理解使用 cherrypy/bottle 的多线程

c# - 具有 IsBackground 的 Lambda 线程

java - 使用 Jackson 反序列化时如何放宽命名策略?

java - 在失败之前自动重试所有测试 3 次