Java进程挂起,不能进行任何线程转储

时间:2015-11-26 12:28:50

标签: java multithreading jvm dump hang

我面临着一个奇怪的案例。如果你能分享你的意见,我很高兴。

我们有在Java 1.6.085上运行的解决方案,有时Java进程正在生产中。解决方案在Linux服务器上运行 我研究了GC日志,没有Full GC。暂停时间也看起来合理。 然后我们尝试在情况发生时进行线程转储,但是kill -3,。/ jstack或./jstack -F不起作用。不能进行任何线程转储。可能是什么原因?关于调查这个问题的任何想法?

BR -emre

2 个答案:

答案 0 :(得分:1)

经过一段时间后,可以理解由于pstack和qdb命令而出现问题,这些命令是出于操作目的在java进程上执行的。不知怎的,pstack和qdb挂起了java进程。因此我们无法进行线程或堆转储

答案 1 :(得分:0)

我们正在使用带有topthreads plugin的jConsole来分析此类案例。该插件使用JMX检查线程运行时,并显示自跟踪过程开始以来的CPU使用情况以及每个线程的当前堆栈跟踪。

要从本地计算机连接我们的服务器,我们在putty中使用隧道,即我们首先通过putty连接到服务器,然后将jConsole连接到通过隧道连接到服务器的本地端口。