I have a piece of Java code that sometimes causes the JVM to "hang". When this happens, I can't communicate with it through tools like jvisualvm
(the tool will say "connection timed out"), and it will also not print a thread dump or terminate when I issue a SIGQUIT
(kill -3
). The process will terminate if I issue a SIGABRT (kill -6
).
Therefore, I can't get a thread dump nor find out what's in its memory. How can one get more information in this situation? If it helps, the OS is OSX
and my JVM version is
Java(TM) SE Runtime Environment (build 1.6.0_51-b11-457-11M4509)
Java HotSpot(TM) 64-Bit Server VM (build 20.51-b01-457, mixed mode)