【发布时间】:2014-03-17 16:33:50
【问题描述】:
我的本地计算机上有一个 Java 程序,该程序在一段时间后变得无响应,并且似乎在没有进一步进展的情况下冻结。我猜它在某处阻塞(它通过 HTTP 和 JDBC 访问远程资源,因此很可能出现阻塞情况)。我正在尝试连接到它以查看主线程堆栈的视图,以便了解块发生的位置。 jvisualvm 和 jconsole 都列出了有问题的 JVM(以及在我的系统中运行的其他 JVM),但都无法连接。
jconsole 拒绝“连接失败”(即使我尝试了不安全的选项)。
jvisualvm 似乎已连接,但当我点击“采样器”选项卡查看堆栈时,它抱怨以下屏幕截图:
问题是我使用相同的实用程序(jconsole 和 jvisualvm)连接到我系统中的其他 JVM任何问题。如何获取这个无响应 JVM 的堆栈以查看它阻塞的位置?
【问题讨论】: