Login  Register

Timeout Exception in SWT

Posted by Art on Apr 19, 2016; 3:40pm
URL: https://forum.jogamp.org/Timeout-Exception-in-SWT-tp4036618.html

I get the following exception when shutting down a scene using SWT. This does not occur in Swing or NEWT. This also only seems to happen when running multiple scenes within the same JVM. You can get it to occur running tests in my open source library.

https://github.com/pnnl/svf 
https://bintray.com/pnnl/maven/svf/view 

finishLifecycleAction(com.jogamp.opengl.util.FPSAnimator$4): ++++++ timeout reached ++++++ main
finishLifecycleAction(com.jogamp.opengl.util.FPSAnimator$4): OK false- pollPeriod 25, blocking true -> res false, waited 1000/1000 - main
 - com.jogamp.opengl.util.FPSAnimator[started true, animating true, paused true, drawable 1, totals[dt 0, frames 0, fps 0.0], modeBits 1, init'ed true, animThread Thread[main-FPSAWTAnimator#05-Timer5,6,main], exclCtxThread false(null)]
    [2]: com.jogamp.opengl.util.AnimatorBase.finishLifecycleAction(AnimatorBase.java:630)
    [3]: com.jogamp.opengl.util.FPSAnimator.pause(FPSAnimator.java:363)
    [4]: com.jogamp.opengl.swt.GLCanvas$5.run(GLCanvas.java:209)
    [5]: com.jogamp.opengl.swt.GLCanvas.runInGLThread(GLCanvas.java:959)
    [6]: com.jogamp.opengl.swt.GLCanvas.dispose(GLCanvas.java:639)
    [7]: com.jogamp.opengl.swt.GLCanvas$7.handleEvent(GLCanvas.java:395)
    [8]: org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
    [9]: org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1053)
    [10]: org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1077)
    [11]: org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1058)
    [12]: org.eclipse.swt.widgets.Widget.release(Widget.java:808)
    [13]: org.eclipse.swt.widgets.Composite.releaseChildren(Composite.java:873)
    [14]: org.eclipse.swt.widgets.Widget.release(Widget.java:811)
    [15]: org.eclipse.swt.widgets.Composite.releaseChildren(Composite.java:873)
    [16]: org.eclipse.swt.widgets.Widget.release(Widget.java:811)
    [17]: org.eclipse.swt.widgets.Composite.releaseChildren(Composite.java:873)
    [18]: org.eclipse.swt.widgets.Widget.release(Widget.java:811)
    [19]: org.eclipse.swt.widgets.Composite.releaseChildren(Composite.java:873)
    [20]: org.eclipse.swt.widgets.Widget.release(Widget.java:811)
    [21]: org.eclipse.swt.widgets.Composite.releaseChildren(Composite.java:873)
    [22]: org.eclipse.swt.widgets.Widget.release(Widget.java:811)
    [23]: org.eclipse.swt.widgets.Widget.dispose(Widget.java:446)
    [24]: org.eclipse.ui.internal.PartPane.dispose(PartPane.java:182)
    [25]: org.eclipse.ui.internal.ViewPane.dispose(ViewPane.java:204)
    [26]: org.eclipse.ui.internal.WorkbenchPartReference.dispose(WorkbenchPartReference.java:681)
    [27]: org.eclipse.ui.internal.WorkbenchPage.disposePart(WorkbenchPage.java:1810)
    [28]: org.eclipse.ui.internal.WorkbenchPage.partRemoved(WorkbenchPage.java:1802)
    [29]: org.eclipse.ui.internal.ViewFactory.releaseView(ViewFactory.java:257)
    [30]: org.eclipse.ui.internal.Perspective.dispose(Perspective.java:292)
    [31]: org.eclipse.ui.internal.WorkbenchPage.dispose(WorkbenchPage.java:1881)
    [32]: org.eclipse.ui.internal.WorkbenchWindow.closeAllPages(WorkbenchWindow.java:894)
    [33]: org.eclipse.ui.internal.WorkbenchWindow.hardClose(WorkbenchWindow.java:1729)
    [34]: org.eclipse.ui.internal.WorkbenchWindow.busyClose(WorkbenchWindow.java:730)
    [35]: org.eclipse.ui.internal.WorkbenchWindow.access$0(WorkbenchWindow.java:715)
    [36]: org.eclipse.ui.internal.WorkbenchWindow$6.run(WorkbenchWindow.java:867)
    [37]: org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:70)
    [38]: org.eclipse.ui.internal.WorkbenchWindow.close(WorkbenchWindow.java:865)
    [39]: org.eclipse.jface.window.WindowManager.close(WindowManager.java:109)
    [40]: org.eclipse.ui.internal.Workbench$18.run(Workbench.java:1114)
    [41]: org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
    [42]: org.eclipse.ui.internal.Workbench.busyClose(Workbench.java:1111)
    [43]: org.eclipse.ui.internal.Workbench.access$15(Workbench.java:1040)
    [44]: org.eclipse.ui.internal.Workbench$25.run(Workbench.java:1284)
    [45]: org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:70)
    [46]: org.eclipse.ui.internal.Workbench.close(Workbench.java:1282)
    [47]: org.eclipse.ui.internal.Workbench.close(Workbench.java:1254)
    [48]: org.eclipse.ui.internal.WorkbenchWindow.busyClose(WorkbenchWindow.java:727)
    [49]: org.eclipse.ui.internal.WorkbenchWindow.access$0(WorkbenchWindow.java:715)
    [50]: org.eclipse.ui.internal.WorkbenchWindow$6.run(WorkbenchWindow.java:867)
    [51]: org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:70)
    [52]: org.eclipse.ui.internal.WorkbenchWindow.close(WorkbenchWindow.java:865)
    [53]: org.eclipse.jface.window.Window.handleShellCloseEvent(Window.java:741)
    [54]: org.eclipse.jface.window.Window$3.shellClosed(Window.java:687)
    [55]: org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:98)
    [56]: org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
    [57]: org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1053)
    [58]: org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1077)
    [59]: org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1062)
    [60]: org.eclipse.swt.widgets.Decorations.closeWidget(Decorations.java:309)
    [61]: org.eclipse.swt.widgets.Decorations.WM_CLOSE(Decorations.java:1694)
    [62]: org.eclipse.swt.widgets.Control.windowProc(Control.java:4530)
    [63]: org.eclipse.swt.widgets.Canvas.windowProc(Canvas.java:341)
    [64]: org.eclipse.swt.widgets.Decorations.windowProc(Decorations.java:1627)
    [65]: org.eclipse.swt.widgets.Shell.windowProc(Shell.java:2069)
    [66]: org.eclipse.swt.widgets.Display.windowProc(Display.java:4976)
    [67]: org.eclipse.swt.internal.win32.OS.DefWindowProcW(Native Method)
    [68]: org.eclipse.swt.internal.win32.OS.DefWindowProc(OS.java:2541)
    [69]: org.eclipse.swt.widgets.Shell.callWindowProc(Shell.java:498)
    [70]: org.eclipse.swt.widgets.Control.windowProc(Control.java:4623)
    [71]: org.eclipse.swt.widgets.Canvas.windowProc(Canvas.java:341)
    [72]: org.eclipse.swt.widgets.Decorations.windowProc(Decorations.java:1627)
    [73]: org.eclipse.swt.widgets.Shell.windowProc(Shell.java:2069)
    [74]: org.eclipse.swt.widgets.Display.windowProc(Display.java:4976)
    [75]: org.eclipse.swt.internal.win32.OS.DefWindowProcW(Native Method)
    [76]: org.eclipse.swt.internal.win32.OS.DefWindowProc(OS.java:2541)
    [77]: org.eclipse.swt.widgets.Shell.callWindowProc(Shell.java:498)
    [78]: org.eclipse.swt.widgets.Control.windowProc(Control.java:4623)
    [79]: org.eclipse.swt.widgets.Canvas.windowProc(Canvas.java:341)
    [80]: org.eclipse.swt.widgets.Decorations.windowProc(Decorations.java:1627)
    [81]: org.eclipse.swt.widgets.Shell.windowProc(Shell.java:2069)
    [82]: org.eclipse.swt.widgets.Display.windowProc(Display.java:4976)
    [83]: org.eclipse.swt.internal.win32.OS.DispatchMessageW(Native Method)
    [84]: org.eclipse.swt.internal.win32.OS.DispatchMessage(OS.java:2546)
    [85]: org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3756)
    [86]: org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:2701)
    [87]: org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2665)
    [88]: org.eclipse.ui.internal.Workbench.access$4(Workbench.java:2499)
    [89]: org.eclipse.ui.internal.Workbench$7.run(Workbench.java:679)
    [90]: org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
    [91]: org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:668)
    [92]: org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149)
    [93]: gov.pnnl.canopy.ui.rcp.CanopyClient.start(CanopyClient.java:66)
    [94]: org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
    [95]: org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110)
    [96]: org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79)
    [97]: org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:353)
    [98]: org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:180)
    [99]: sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    [100]: sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    [101]: sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    [102]: java.lang.reflect.Method.invoke(Method.java:497)
    [103]: org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:629)
    [104]: org.eclipse.equinox.launcher.Main.basicRun(Main.java:584)
    [105]: org.eclipse.equinox.launcher.Main.run(Main.java:1438)
    [106]: org.eclipse.equinox.launcher.Main.main(Main.java:1414)