I'm a newbie in java application debugging, still, try to learn a various aspect of java application debugging. I have a windows application comprises of many jar file & executed by a single .exe file written in c++. The application works smoothly but after a certain time of usage, it crashes
(Java (TM) Platform SE binary is not responding)
leaving no log. I tried -XX:ErrorFile argument but it does not generate any error file. I have also tried heap-dump analysis but it also shows no memory leak. Can anyone please tell me what could be the possible reason for the JVM crash! Or how can I get the log file of the crash?
At the ideal time, the application consumes only 1-10% of CPU & 250-280MB Memory but after the crash, it sticks to 25% of CPU usage & 250-280MB Memory usage. I dedicated 2048M of Memory to this application.
Thread dump shows following thread before the application hang
"Thread-1" #12 daemon prio=5 os_prio=0 tid=0x0000000018392800 nid=0x2de0 waiting on condition [0x0000000018ece000]
java.lang.Thread.State: WAITING (parking)
at sun.misc.Unsafe.park(Native Method)
- parking to wait for <0x00000000a1da8db8> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
at java.util.concurrent.locks.LockSupport.park(LockSupport.java:175)
at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2039)
at java.util.concurrent.LinkedBlockingDeque.takeFirst(LinkedBlockingDeque.java:492)
at com.sun.glass.ui.InvokeLaterDispatcher.run(InvokeLaterDispatcher.java:108)
Locked ownable synchronizers:
- None
After the application hang the same thread is changed to -
"Thread-1" #12 daemon prio=5 os_prio=0 tid=0x0000000018392800 nid=0x2de0 in Object.wait() [0x0000000018ece000]
java.lang.Thread.State: WAITING (on object monitor)
at java.lang.Object.wait(Native Method)
at java.lang.Object.wait(Object.java:502)
at com.sun.glass.ui.InvokeLaterDispatcher.run(InvokeLaterDispatcher.java:126)
- locked <0x00000000a1d65960> (a java.lang.StringBuilder)
Locked ownable synchronizers:
- None
How can I solve the issue?
Thread dump file link - Thread Dump File Link