【问题标题】:IlegalStateException in com.sun.ui.glass.View and javafx application thread hangscom.sun.ui.glass.View 和 javafx 应用程序线程中的 IlegalStateException 挂起
【发布时间】:2014-09-13 15:26:53
【问题描述】:

我有一个摇摆应用程序并通过JFXPanel(选项卡/应用程序之一)转换到 JavaFX(可能不相关,但为了完整和正确的图片)

我注意到那个 JavaFX 应用程序挂起,然后这个堆栈跟踪记录在日志中。

有点指向 glass 工具包,但我是 JavaFX 的新手。

RenderJob.run: internal exception
java.lang.IllegalStateException: The view has already been closed
    at com.sun.glass.ui.View.checkNotClosed(View.java:404)
    at com.sun.glass.ui.View.unlock(View.java:746)
    at com.sun.glass.ui.Pen.end(Pen.java:36)
    at com.sun.javafx.tk.quantum.UploadingPainter.run(UploadingPainter.java:145)
    at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
    at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:304)
    at com.sun.prism.render.RenderJob.run(RenderJob.java:37)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
    at com.sun.javafx.tk.quantum.QuantumRenderer$PipelineRunnable.run(QuantumRenderer.java:108)
    at java.lang.Thread.run(Thread.java:744)

以上听起来很可疑。可能悬挂的部分听起来很可疑。我可以在 View 类中看到其他抽象方法 close 及其在 WinView 中的实现。但是 FX 应用程序线程不应该挂起,对吗?

这可能是 javafx 中的错误吗?

【问题讨论】:

  • 我们看到了类似设置的类似问题。测试人员运行应用一段时间后生成一次,但时间不长。

标签: swing user-interface javafx javafx-2 java-7


【解决方案1】:

当您使用 jxpanel 打开/关闭并重新打开 jframe 时,是否会发生这种情况。您是否偶然忘记调用 Platform.setImplicitExit(false)?

【讨论】:

  • 不,我的代码有 Platform.setImplicitExit(false);那里。是的,我用 JFXPanel 打开/关闭了一个 JFrame。这个错误很少出现。不总是。测试人员只报告过一次,事实上我到目前为止还没有在我的开发设置中看到它。
猜你喜欢
  • 2019-10-17
  • 1970-01-01
  • 2014-01-13
  • 2013-01-18
  • 2020-04-30
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多