ulz*_*han 5 multithreading javafx thread-sleep
我有Java FX应用程序线程的问题.这是一个伪代码:
showMenu();
//Contoller which waits for action(pressing button)...
showLoadingPic();
Thread.sleep(2000);
showMap();
Run Code Online (Sandbox Code Playgroud)
问题是睡眠发生在showMenu()中显示的窗口中,showLoadingPic()根本没有显示,并且在showMap()的结束窗口中显示.
showLoadingPic中的场景有一个进度条,运行2秒,与Thread.sleep(2000)同时运行.
所以似乎javafx应用程序线程块showLoadingPic()和showLoadingPic()在后台运行.
有人可以帮我解决这个问题吗?
先感谢您!
Gui*_*sel 12
有一个Java FX事件调度线程,它处理所有与GUI相关的任务.您必须更新此线程中的所有UI组件.长时间运行的任务,例如Thread.sleep永远不应该在这个线程中执行,因为Windows将挂起,GUI将被冻结.
在应用程序主线程中执行所有代码,并通过调用在JavaFX线程中仅执行GUI任务Platform.runLater.
有关此主题的参考资料:
| 归档时间: |
|
| 查看次数: |
13473 次 |
| 最近记录: |