C++程序冻结和UI变为全白
C++ Program freezing and UI turn all white
我正在使用C++年内置的软件C++使用每月冻结一次的生成器。我正在查找代码,但它太大而找不到它。冻结使 UI 全部变白。我试图用一些建议的错误代码(空指针,while(1)和类似的东西)来模拟这个错误,但从来没有得到相同的空白UI。当它停止时,我运行了一个 What's Hang,但我什么也没得到。有人知道我下次可以做些什么来获取更多信息,这些信息可以帮助我找到冻结的原因?
当 UI
绘制消息排队但未处理时,通常会发生空白(白色)UI。 如果您没有在 UI 中执行某些操作来触发重绘,则仅阻止消息队列处理新消息是不够的。
至于解决原始问题 - 您应该在主线程中查找运行长循环而不处理新消息的任何代码,或者使用 WaitForSingleObject()
或 WaitForMultipleOBjects()
而不是 MsgWaitForMultipleObjects()
长时间等待可等待的对象,调用 TThread::WaitFor()
未及时终止的线程等。
如果不知道用户执行哪些步骤来导致冻结的 UI,因此您知道要开始查看哪些代码,则很难解决此类问题。
相关文章:
- 有没有一种方法可以测量桌面应用程序 UI 响应时间
- 如何制作多语言QT UI应用程序
- QML应用程序编译一个 *form.ui.qml文件,但忽略了关联的.qml文件
- C#优雅地关闭一个没有UI的单独应用程序
- wxWidgets UI应用程序在C++中使用4个或多个wxBoxSizer对象时出现分段错误
- Windows 8 现代 UI 应用程序和 DirectX.如何绘制文本
- 在一个程序中处理多个QT Designer UI文件的最佳方法是什么?
- 如何在VS编码的UI测试生成器的自定义控件中将测试提供程序从MSAA切换到UIA
- 列出在Windows 8上使用Windows UI Automation的Metro应用程序的所有UI元素
- 跨平台C++UI应用程序
- C应用程序之上的C++UI窗体
- 消息处理程序中的 RAND_event() 会导致 UI 中的小冻结吗?
- win32 DialogBox() 和 MAKEINTRESOURCE():如何修改应用程序的 UI?
- C++程序冻结和UI变为全白
- 使用开放框架中的android UI修改程序中C++变量
- UI 在应用程序 UI 外部没有响应
- Qt Ui 应用程序屏幕方向
- 使用 UI 自动化单击应用程序中的按钮
- 如何在同一个容器(C++)中显示来自不同应用程序的ui
- 如何列出所有现代UI应用程序