Skr*_*lin 5 wpf windows-7 c#-4.0
Windows 7窗口管理器会定期将我的WPF应用程序检测为挂起,将其重影并弹出一条无响应的消息.我已经使用该应用程序已有好几个星期而且还没有看到它,但是与我相同硬件的用户说他经常使用它.
可能的一切都是在另一个线程上的任务中运行,所以我不知道从哪里开始寻找问题.如果用户等待应用程序响应它会快速恢复,所以我假设问题出现在GUI线程上,偶尔需要5秒钟才能运行.
有什么方法可以检测到DWM认为应用程序挂起的时候我可以记录堆栈跟踪吗?
500*_*ror 1
我还没有在 WPF 应用程序中执行此操作,但传统方法是使用 SendMessageTimeout 经常从后台线程发送 WM_NULL 消息,并且如果主 UI 线程在 30 秒内未处理该消息,为该线程生成堆栈转储。
归档时间:
14 年 前
查看次数:
623 次
最近记录:
13 年,12 月 前