2
A
回答
2
5
我想你把本末倒置:你的主线程不应该做摆在首位任何耗时的操作 - 它们应始终在单独的线程外部化,让您的GUI可以保持响应(例如在操作上显示状态,或者提供放弃它们的可能性)。
2
您可以有一个线程轮询GUI线程的堆栈跟踪以确定它是空闲还是忙碌。如果太频繁,您可以将它正在做的事情(堆栈跟踪)记录到日志中。最初,记录每个非空闲堆栈跟踪并确定哪些值不值得记录可能很有趣。
相关问题
- 1. 线程完全冻结GUI
- 2. 如何阻止matplotlib GUI线程冻结?
- 3. 多线程及的Thread.Sleep冻结GUI
- 4. Powershell:冻结GUI
- 5. Tkinter GUI冻结
- 6. QProcess冻结GUI
- 7. scypy.signal.decimate()冻结GUI
- 8. FireDac冻结GUI
- 9. urllib2冻结GUI
- 10. 如何避免GUI冻结?
- 11. 在Qt库中检测GUI线程
- 12. GUI +线程,GUI退出线程停留 - >如何在GUI再次启动时检测线程?
- 13. 工作者线程睡眠会导致主GUI冻结
- 14. MS测试结果冻结GUI
- 15. GUI冻结 - Perl Tk
- 16. 任务冻结GUI
- 17. GUI冻结和多
- 18. Android Handler冻结GUI
- 19. QProcess GUI不冻结
- 20. WatchService冻结JavaFX GUI
- 21. 在多线程操作中避免GUI冻结
- 22. 使用scintilla NET停止在backgroundworker线程中不冻结GUI
- 23. 在BackgroundWorker线程中下载文件时GUI冻结
- 24. 从主GUI线程检索信息
- 25. 线程在GUI中
- 26. 等待事件。如何不冻结gui
- 27. 如何防止使用QThread冻结GUI?
- 28. Android Java GUI冻结/ w ProgressBar
- 29. ThreadPool导致GUI冻结(?)
- 30. GUI冻结而Dispatcher.BeginInvoke或Task.StartNew
这没有多大意义。如果gui被冻结,您将无法设置等待光标:GUI被冻结。 – 2011-12-17 13:24:36
@blow可以提取所有Event Event Dispash Thread中的事件,检查Reapaint Manager中的违规行为,但是为什么???必须计算(如果我们谈论AWT,Swing及其衍生产品) EDT会在一瞬间完成(输出到屏幕), – mKorbel 2011-12-17 13:29:34
@blow:添加'swing'标签。请纠正,如果我错了 – home 2011-12-17 13:36:16