Here's the output from JStack. Sorry for the long post. Is there anything that says why the app hung (I can't find anything)?
"JMX server connection timeout 46" #46 daemon prio=5 os_prio=0 tid=0x1a9f9800 nid=0x1a44 in Object.wait() [0x1b3bf000] java.lang.Thread.State: TIMED_WAITING (on object monitor) at java.lang.Object.wait(Native Method) at com.sun.jmx.remote.internal.ServerCommunicatorAdmin$Timeout.run(ServerCommunicatorAdmin.java:168) - locked <0x0b912f10> (a [I) at java.lang.Thread.run(Thread.java:745) Locked ownable synchronizers: - None "RMI Scheduler(0)" #45 daemon prio=5 os_prio=0 tid=0x1a9f9c00 nid=0x18b0 waiting on condition [0x1b20f000] java.lang.Thread.State: TIMED_WAITING (parking) at sun.misc.Unsafe.park(Native Method) - parking to wait for <0x0b9130a8> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject) at java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215) at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2078) at java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:1093) at java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:809) at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1067) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1127) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) at java.lang.Thread.run(Thread.java:745) Locked ownable synchronizers: - None "RMI TCP Connection(1)-192.168.1.82" #44 daemon prio=5 os_prio=0 tid=0x1a9f8c00 nid=0x2d0c runnable [0x1b17e000] java.lang.Thread.State: RUNNABLE at java.net.SocketInputStream.socketRead0(Native Method) at java.net.SocketInputStream.socketRead(SocketInputStream.java:116) at java.net.SocketInputStream.read(SocketInputStream.java:170) at java.net.SocketInputStream.read(SocketInputStream.java:141) at java.io.BufferedInputStream.fill(BufferedInputStream.java:246) at java.io.BufferedInputStream.read(BufferedInputStream.java:265) - locked <0x0b915398> (a java.io.BufferedInputStream) at java.io.FilterInputStream.read(FilterInputStream.java:83) at sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:550) at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:826) at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.lambda$run$255(TCPTransport.java:683) at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler$$Lambda$292/18499935.run(Unknown Source) at java.security.AccessController.doPrivileged(Native Method) at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:682) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) at java.lang.Thread.run(Thread.java:745) Locked ownable synchronizers: - <0x0b915550> (a java.util.concurrent.ThreadPoolExecutor$Worker) "RMI TCP Accept-0" #43 daemon prio=5 os_prio=0 tid=0x1a9f7800 nid=0x6d4 runnable [0x1a6cf000] java.lang.Thread.State: RUNNABLE at java.net.DualStackPlainSocketImpl.accept0(Native Method) at java.net.DualStackPlainSocketImpl.socketAccept(DualStackPlainSocketImpl.java:131) at java.net.AbstractPlainSocketImpl.accept(AbstractPlainSocketImpl.java:404) at java.net.PlainSocketImpl.accept(PlainSocketImpl.java:199) - locked <0x0b9157b8> (a java.net.SocksSocketImpl) at java.net.ServerSocket.implAccept(ServerSocket.java:545) at java.net.ServerSocket.accept(ServerSocket.java:513) at sun.management.jmxremote.LocalRMIServerSocketFactory$1.accept(LocalRMIServerSocketFactory.java:52) at sun.rmi.transport.tcp.TCPTransport$AcceptLoop.executeAcceptLoop(TCPTransport.java:400) at sun.rmi.transport.tcp.TCPTransport$AcceptLoop.run(TCPTransport.java:372) at java.lang.Thread.run(Thread.java:745) Locked ownable synchronizers: - None "Timer-0" #37 prio=6 os_prio=0 tid=0x1a9f8000 nid=0x1f4c in Object.wait() [0x1da4f000] java.lang.Thread.State: TIMED_WAITING (on object monitor) at java.lang.Object.wait(Native Method) at java.util.TimerThread.mainLoop(Timer.java:552) - locked <0x0b0fcd20> (a java.util.TaskQueue) at java.util.TimerThread.run(Timer.java:505) Locked ownable synchronizers: - None "Watchdog-Timer-1" #35 daemon prio=6 os_prio=0 tid=0x16b01400 nid=0xe08 waiting on condition [0x1d5ef000] java.lang.Thread.State: WAITING (parking) at sun.misc.Unsafe.park(Native Method) - parking to wait for <0x0a8f15a8> (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.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:1081) at java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:809) at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1067) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1127) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) at java.lang.Thread.run(Thread.java:745) Locked ownable synchronizers: - None "Disposer" #34 daemon prio=10 os_prio=2 tid=0x16b00c00 nid=0x10fc in Object.wait() [0x1d41f000] java.lang.Thread.State: WAITING (on object monitor) at java.lang.Object.wait(Native Method) - waiting on <0x0a8f17e0> (a java.lang.ref.ReferenceQueue$Lock) at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:143) - locked <0x0a8f17e0> (a java.lang.ref.ReferenceQueue$Lock) at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:164) at com.sun.webkit.Disposer.run(Disposer.java:90) at java.lang.Thread.run(Thread.java:745) Locked ownable synchronizers: - None "KeyTipManager processing thread" #33 daemon prio=6 os_prio=0 tid=0x16b00800 nid=0x2008 waiting on condition [0x1ce9f000] java.lang.Thread.State: WAITING (parking) at sun.misc.Unsafe.park(Native Method) - parking to wait for <0x0a8f19a8> (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.LinkedBlockingQueue.take(LinkedBlockingQueue.java:442) at org.pushingpixels.flamingo.internal.utils.KeyTipManager$ProcessingThread.run(KeyTipManager.java:521) Locked ownable synchronizers: - None "Substance heap status" #32 daemon prio=6 os_prio=0 tid=0x16b00000 nid=0x10f0 waiting on condition [0x1cd0f000] java.lang.Thread.State: TIMED_WAITING (sleeping) at java.lang.Thread.sleep(Native Method) at org.pushingpixels.substance.internal.utils.SubstanceTitlePane$HeapStatusThread.run(SubstanceTitlePane.java:470) Locked ownable synchronizers: - None "Trident pulse source thread" #30 daemon prio=6 os_prio=0 tid=0x16b02400 nid=0x488 waiting on condition [0x1cc7f000] java.lang.Thread.State: TIMED_WAITING (sleeping) at java.lang.Thread.sleep(Native Method) at org.pushingpixels.trident.TridentConfig$FixedRatePulseSource.waitUntilNextPulse(TridentConfig.java:64) at org.pushingpixels.trident.TimelineEngine$TridentAnimationThread.run(TimelineEngine.java:190) Locked ownable synchronizers: - None "Trident callback thread" #29 daemon prio=6 os_prio=0 tid=0x16aff800 nid=0x149c waiting on condition [0x1cb7e000] java.lang.Thread.State: WAITING (parking) at sun.misc.Unsafe.park(Native Method) - parking to wait for <0x0a886020> (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.LinkedBlockingQueue.take(LinkedBlockingQueue.java:442) at org.pushingpixels.trident.TimelineEngine$TimelineCallbackThread.run(TimelineEngine.java:214) Locked ownable synchronizers: - None "TimerQueue" #27 daemon prio=5 os_prio=0 tid=0x16afec00 nid=0x12e8 waiting on condition [0x1bf0f000] java.lang.Thread.State: WAITING (parking) at sun.misc.Unsafe.park(Native Method) - parking to wait for <0x0a6a6b28> (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.DelayQueue.take(DelayQueue.java:211) at javax.swing.TimerQueue.run(TimerQueue.java:171) at java.lang.Thread.run(Thread.java:745) Locked ownable synchronizers: - <0x0a6b5420> (a java.util.concurrent.locks.ReentrantLock$NonfairSync) "Swing-Shell" #24 daemon prio=6 os_prio=0 tid=0x16b02000 nid=0x2d20 waiting on condition [0x1b05f000] java.lang.Thread.State: WAITING (parking) at sun.misc.Unsafe.park(Native Method) - parking to wait for <0x0a657b98> (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.LinkedBlockingQueue.take(LinkedBlockingQueue.java:442) at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1067) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1127) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) at sun.awt.shell.Win32ShellFolderManager2$ComInvoker$3.run(Win32ShellFolderManager2.java:547) at java.lang.Thread.run(Thread.java:745) Locked ownable synchronizers: - None "Prism Font Disposer" #21 daemon prio=10 os_prio=2 tid=0x16aff400 nid=0x15b0 in Object.wait() [0x1a53f000] java.lang.Thread.State: WAITING (on object monitor) at java.lang.Object.wait(Native Method) - waiting on <0x0a589af8> (a java.lang.ref.ReferenceQueue$Lock) at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:143) - locked <0x0a589af8> (a java.lang.ref.ReferenceQueue$Lock) at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:164) at com.sun.javafx.font.Disposer.run(Disposer.java:93) at java.lang.Thread.run(Thread.java:745) Locked ownable synchronizers: - None "Thread-3" #20 daemon prio=5 os_prio=0 tid=0x169be800 nid=0x20f0 runnable [0x00000000] java.lang.Thread.State: RUNNABLE Locked ownable synchronizers: - None "JavaFX Application Thread" #19 prio=6 os_prio=0 tid=0x16959000 nid=0xd2c waiting on condition [0x1751e000] java.lang.Thread.State: WAITING (parking) at sun.misc.Unsafe.park(Native Method) - parking to wait for <0x062a04c8> (a java.util.concurrent.CountDownLatch$Sync) at java.util.concurrent.locks.LockSupport.park(LockSupport.java:175) at java.util.concurrent.locks.AbstractQueuedSynchronizer.parkAndCheckInterrupt(AbstractQueuedSynchronizer.java:836) at java.util.concurrent.locks.AbstractQueuedSynchronizer.doAcquireSharedInterruptibly(AbstractQueuedSynchronizer.java:997) at java.util.concurrent.locks.AbstractQueuedSynchronizer.acquireSharedInterruptibly(AbstractQueuedSynchronizer.java:1304) at java.util.concurrent.CountDownLatch.await(CountDownLatch.java:231) at com.sun.javafx.tk.quantum.PaintCollector.waitForRenderingToComplete(PaintCollector.java:157) at com.sun.javafx.tk.quantum.GlassScene.waitForRenderingToComplete(GlassScene.java:127) at javafx.scene.Scene$ScenePulseListener.pulse(Scene.java:2410) at com.sun.javafx.tk.Toolkit.lambda$runPulse$31(Toolkit.java:339) at com.sun.javafx.tk.Toolkit$$Lambda$159/15577651.run(Unknown Source) at java.security.AccessController.doPrivileged(Native Method) at com.sun.javafx.tk.Toolkit.runPulse(Toolkit.java:338) at com.sun.javafx.tk.Toolkit.firePulse(Toolkit.java:365) at com.sun.javafx.tk.quantum.QuantumToolkit.pulse(QuantumToolkit.java:510) at com.sun.javafx.tk.quantum.QuantumToolkit.pulse(QuantumToolkit.java:490) at com.sun.javafx.tk.quantum.QuantumToolkit.lambda$runToolkit$401(QuantumToolkit.java:319) at com.sun.javafx.tk.quantum.QuantumToolkit$$Lambda$53/11536130.run(Unknown Source) at com.sun.glass.ui.InvokeLaterDispatcher$Future.run(InvokeLaterDispatcher.java:95) at com.sun.glass.ui.win.WinApplication._runLoop(Native Method) at com.sun.glass.ui.win.WinApplication.lambda$null$146(WinApplication.java:108) at com.sun.glass.ui.win.WinApplication$$Lambda$49/30394683.run(Unknown Source) at java.lang.Thread.run(Thread.java:745) Locked ownable synchronizers: - None "Thread-2" #18 daemon prio=6 os_prio=0 tid=0x1697cc00 nid=0x22a8 in Object.wait() [0x1748f000] 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 <0x0a318fc0> (a java.lang.StringBuilder) Locked ownable synchronizers: - None "QuantumRenderer-0" #16 daemon prio=6 os_prio=0 tid=0x1691bc00 nid=0x10d4 runnable [0x167dd000] java.lang.Thread.State: RUNNABLE at com.sun.prism.impl.shape.NativePiscesRasterizer.produceStrokeAlphas(Native Method) at com.sun.prism.impl.shape.NativePiscesRasterizer.getMaskData(NativePiscesRasterizer.java:157) at com.sun.prism.impl.shape.ShapeUtil.rasterizeShape(ShapeUtil.java:51) at com.sun.prism.impl.ps.BaseShaderGraphics.renderShape(BaseShaderGraphics.java:463) at com.sun.prism.impl.ps.BaseShaderGraphics.drawLine(BaseShaderGraphics.java:1769) at com.sun.javafx.sg.prism.NGLine.renderContent2D(NGLine.java:55) at com.sun.javafx.sg.prism.NGShape.renderContent(NGShape.java:261) at com.sun.javafx.sg.prism.NGNode.doRender(NGNode.java:2053) at com.sun.javafx.sg.prism.NGNode.render(NGNode.java:1945) at com.sun.javafx.sg.prism.NGGroup.renderContent(NGGroup.java:235) at com.sun.javafx.sg.prism.NGNode.doRender(NGNode.java:2053) at com.sun.javafx.sg.prism.NGNode.render(NGNode.java:1945) at com.sun.javafx.sg.prism.NGGroup.renderContent(NGGroup.java:235) at com.sun.javafx.sg.prism.NGNode.doRender(NGNode.java:2053) at com.sun.javafx.sg.prism.NGNode.render(NGNode.java:1945) at com.sun.javafx.sg.prism.NGGroup.renderContent(NGGroup.java:235) at com.sun.javafx.sg.prism.NGNode.doRender(NGNode.java:2053) at com.sun.javafx.sg.prism.NGNode.render(NGNode.java:1945) at com.sun.javafx.sg.prism.NGGroup.renderContent(NGGroup.java:235) at com.sun.javafx.sg.prism.NGNode.doRender(NGNode.java:2053) at com.sun.javafx.sg.prism.NGNode.render(NGNode.java:1945) at com.sun.javafx.sg.prism.NGGroup.renderContent(NGGroup.java:235) at com.sun.javafx.sg.prism.NGNode.doRender(NGNode.java:2053) at com.sun.javafx.sg.prism.NGNode.render(NGNode.java:1945) at com.sun.javafx.sg.prism.NGGroup.renderContent(NGGroup.java:235) at com.sun.javafx.sg.prism.NGNode.doRender(NGNode.java:2053) at com.sun.javafx.sg.prism.NGNode.render(NGNode.java:1945) at com.sun.javafx.sg.prism.NGGroup.renderContent(NGGroup.java:235) at com.sun.javafx.sg.prism.NGNode.doRender(NGNode.java:2053) at com.sun.javafx.sg.prism.NGNode.render(NGNode.java:1945) at com.sun.javafx.sg.prism.NGGroup.renderContent(NGGroup.java:235) at com.sun.javafx.sg.prism.NGNode.doRender(NGNode.java:2053) at com.sun.javafx.sg.prism.NGNode.render(NGNode.java:1945) at com.sun.javafx.tk.quantum.ViewPainter.doPaint(ViewPainter.java:474) at com.sun.javafx.tk.quantum.ViewPainter.paintImpl(ViewPainter.java:320) at com.sun.javafx.tk.quantum.UploadingPainter.run(UploadingPainter.java:133) at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:308) at com.sun.javafx.tk.RenderJob.run(RenderJob.java:58) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) at com.sun.javafx.tk.quantum.QuantumRenderer$PipelineRunnable.run(QuantumRenderer.java:125) at java.lang.Thread.run(Thread.java:745) Locked ownable synchronizers: - <0x0a3191f8> (a java.util.concurrent.ThreadPoolExecutor$Worker) - <0x0a5becf8> (a java.util.concurrent.locks.ReentrantLock$NonfairSync) "DestroyJavaVM" #15 prio=5 os_prio=0 tid=0x02a0d800 nid=0x698 waiting on condition [0x00000000] java.lang.Thread.State: RUNNABLE Locked ownable synchronizers: - None "AWT-EventQueue-0" #14 prio=6 os_prio=0 tid=0x1609bc00 nid=0x1524 waiting on condition [0x1674d000] java.lang.Thread.State: WAITING (parking) at sun.misc.Unsafe.park(Native Method) - parking to wait for <0x0a5becf8> (a java.util.concurrent.locks.ReentrantLock$NonfairSync) at java.util.concurrent.locks.LockSupport.park(LockSupport.java:175) at java.util.concurrent.locks.AbstractQueuedSynchronizer.parkAndCheckInterrupt(AbstractQueuedSynchronizer.java:836) at java.util.concurrent.locks.AbstractQueuedSynchronizer.acquireQueued(AbstractQueuedSynchronizer.java:870) at java.util.concurrent.locks.AbstractQueuedSynchronizer.acquire(AbstractQueuedSynchronizer.java:1199) at java.util.concurrent.locks.ReentrantLock$NonfairSync.lock(ReentrantLock.java:209) at java.util.concurrent.locks.ReentrantLock.lock(ReentrantLock.java:285) at com.sun.javafx.tk.quantum.QuantumToolkit.runWithRenderLock(QuantumToolkit.java:405) at com.sun.javafx.tk.quantum.EmbeddedScene.getPixels(EmbeddedScene.java:186) at javafx.embed.swing.JFXPanel.paintComponent(JFXPanel.java:717) at javax.swing.JComponent.paint(JComponent.java:1056) at javax.swing.JComponent.paintChildren(JComponent.java:889) - locked <0x0a214c48> (a java.awt.Component$AWTTreeLock) at javax.swing.JComponent.paint(JComponent.java:1065) at javax.swing.JComponent.paintChildren(JComponent.java:889) - locked <0x0a214c48> (a java.awt.Component$AWTTreeLock) at javax.swing.JComponent.paint(JComponent.java:1065) at javax.swing.JComponent.paintChildren(JComponent.java:889) - locked <0x0a214c48> (a java.awt.Component$AWTTreeLock) at javax.swing.JComponent.paint(JComponent.java:1065) at javax.swing.JLayeredPane.paint(JLayeredPane.java:586) at javax.swing.JComponent.paintToOffscreen(JComponent.java:5210) at javax.swing.RepaintManager$PaintManager.paintDoubleBuffered(RepaintManager.java:1572) at javax.swing.RepaintManager$PaintManager.paint(RepaintManager.java:1495) at javax.swing.RepaintManager.paint(RepaintManager.java:1265) at javax.swing.JComponent._paintImmediately(JComponent.java:5158) at javax.swing.JComponent.paintImmediately(JComponent.java:4969) at javax.swing.RepaintManager$4.run(RepaintManager.java:824) at javax.swing.RepaintManager$4.run(RepaintManager.java:807) at java.security.AccessController.doPrivileged(Native Method) at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:77) at javax.swing.RepaintManager.paintDirtyRegions(RepaintManager.java:807) at javax.swing.RepaintManager.paintDirtyRegions(RepaintManager.java:782) at javax.swing.RepaintManager.prePaintDirtyRegions(RepaintManager.java:731) at javax.swing.RepaintManager.access$1300(RepaintManager.java:64) at javax.swing.RepaintManager$ProcessingRunnable.run(RepaintManager.java:1720) at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:311) at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:756) at java.awt.EventQueue.access$500(EventQueue.java:97) at java.awt.EventQueue$3.run(EventQueue.java:709) at java.awt.EventQueue$3.run(EventQueue.java:703) at java.security.AccessController.doPrivileged(Native Method) at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:77) at java.awt.EventQueue.dispatchEvent(EventQueue.java:726) at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:201) at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116) at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105) at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101) at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93) at java.awt.EventDispatchThread.run(EventDispatchThread.java:82) Locked ownable synchronizers: - None "AWT-Windows" #12 daemon prio=6 os_prio=0 tid=0x16094c00 nid=0x2c6c runnable [0x164ff000] java.lang.Thread.State: RUNNABLE at sun.awt.windows.WToolkit.eventLoop(Native Method) at sun.awt.windows.WToolkit.run(WToolkit.java:306) at java.lang.Thread.run(Thread.java:745) Locked ownable synchronizers: - None "AWT-Shutdown" #11 prio=5 os_prio=0 tid=0x16094400 nid=0x2f58 in Object.wait() [0x1646f000] java.lang.Thread.State: WAITING (on object monitor) at java.lang.Object.wait(Native Method) at java.lang.Object.wait(Object.java:502) at sun.awt.AWTAutoShutdown.run(AWTAutoShutdown.java:295) - locked <0x0a2520d8> (a java.lang.Object) at java.lang.Thread.run(Thread.java:745) Locked ownable synchronizers: - None "Java2D Disposer" #10 daemon prio=10 os_prio=2 tid=0x16093800 nid=0x1d08 in Object.wait() [0x158ff000] java.lang.Thread.State: WAITING (on object monitor) at java.lang.Object.wait(Native Method) at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:143) - locked <0x0a1f2810> (a java.lang.ref.ReferenceQueue$Lock) at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:164) at sun.java2d.Disposer.run(Disposer.java:148) at java.lang.Thread.run(Thread.java:745) Locked ownable synchronizers: - None "Monitor Ctrl-Break" #9 daemon prio=5 os_prio=0 tid=0x16003800 nid=0x23b8 runnable [0x1617f000] java.lang.Thread.State: RUNNABLE at java.net.DualStackPlainSocketImpl.accept0(Native Method) at java.net.DualStackPlainSocketImpl.socketAccept(DualStackPlainSocketImpl.java:131) at java.net.AbstractPlainSocketImpl.accept(AbstractPlainSocketImpl.java:404) at java.net.PlainSocketImpl.accept(PlainSocketImpl.java:199) - locked <0x0a1f2a70> (a java.net.SocksSocketImpl) at java.net.ServerSocket.implAccept(ServerSocket.java:545) at java.net.ServerSocket.accept(ServerSocket.java:513) at com.intellij.rt.execution.application.AppMain$1.run(AppMain.java:90) at java.lang.Thread.run(Thread.java:745) Locked ownable synchronizers: - None "Service Thread" #7 daemon prio=9 os_prio=0 tid=0x0292f400 nid=0x7a0 runnable [0x00000000] java.lang.Thread.State: RUNNABLE Locked ownable synchronizers: - None "C1 CompilerThread0" #6 daemon prio=9 os_prio=2 tid=0x02900000 nid=0x2ea8 waiting on condition [0x00000000] java.lang.Thread.State: RUNNABLE Locked ownable synchronizers: - None "Attach Listener" #5 daemon prio=5 os_prio=2 tid=0x028ff000 nid=0x1568 waiting on condition [0x00000000] java.lang.Thread.State: RUNNABLE Locked ownable synchronizers: - None "Signal Dispatcher" #4 daemon prio=9 os_prio=2 tid=0x0289e800 nid=0x2040 runnable [0x00000000] java.lang.Thread.State: RUNNABLE Locked ownable synchronizers: - None "Finalizer" #3 daemon prio=8 os_prio=1 tid=0x02898c00 nid=0x163c in Object.wait() [0x14c4f000] java.lang.Thread.State: WAITING (on object monitor) at java.lang.Object.wait(Native Method) at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:143) - locked <0x0a1f3330> (a java.lang.ref.ReferenceQueue$Lock) at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:164) at java.lang.ref.Finalizer$FinalizerThread.run(Finalizer.java:209) Locked ownable synchronizers: - None "Reference Handler" #2 daemon prio=10 os_prio=2 tid=0x02897400 nid=0x5b0 in Object.wait() [0x04b7f000] java.lang.Thread.State: WAITING (on object monitor) at java.lang.Object.wait(Native Method) at java.lang.Object.wait(Object.java:502) at java.lang.ref.Reference$ReferenceHandler.run(Reference.java:157) - locked <0x0a1f34d0> (a java.lang.ref.Reference$Lock) Locked ownable synchronizers: - None "VM Thread" os_prio=2 tid=0x02893c00 nid=0x2f54 runnable "VM Periodic Task Thread" os_prio=2 tid=0x02936000 nid=0x2f20 waiting on condition JNI global references: 3785 On Thu, May 14, 2015 at 11:40 AM, Pedro Duque Vieira < pedro.duquevie...@gmail.com> wrote: > Hi Morris, > > I've tried running with the flags you mention but it all stops producing > text when the application hangs and there's no information remaining which > would tell me why the application hangs. > > I've also tried using the apps you talk about (jstack and visual vm) but I > can't make sense of the information they present. > > The app that hangs is modellus - http://modellus.co/ and the file that > makes it hang is attached (you have to wait a while after opening the file > until the app hangs). > > Can you give me some more help, I'm still not aware of what could cause > this. > > Thanks, best regards, > > Hi Pedro, >> You might want to try setting the flags "quantum.debug", "quantum.pulse" >> and "quantum.verbose" when launching your application. >> Prior to that you might want to try to get a stack trace of the hung >> application using jstack, Visual VM or doing a Ctrl-Break on Windows or >> Control-\ on Mac. >> --mm > > > -- > Pedro Duque Vieira > -- Pedro Duque Vieira