可以捕获应用程序冻结

时间:2017-03-23 04:56:30

标签: vb.net multithreading freeze

我正在使用我的应用程序随机冻结,整个窗口将无法响应。 GUI不响应任何用户交互,甚至不能移动窗口。任务管理器显示资源是正常的,我的应用程序不会抛出任何错误,程序也不会显示为“无响应”。

我已经检查了事件veiwer,并且每次发生时都可以看到以下参考:

The program DM_Agent.exe version 2.0.14.0 stopped interacting with Windows and was closed. To see if more information about the problem is available, check the problem history in the Action Center control panel.
 Process ID: fcd0
 Start Time: 01d2a365091f8a3f
 Termination Time: 4294967295
 Application Path: C:\Program Files (x86)\ApplicationPath\DrakeMon Client Suite\DM_Agent\DM_Agent.exe
 Report Id: 81ff18e8-0f74-11e7-80c7-000c2931dfd6
 Faulting package full name: 
 Faulting package-relative application ID: 

我假设它与线程有关,因为我的应用程序使用多个计时器定期扫描文件夹,应用程序和系统资源。但是,我的应用程序可以工作几天而不会冻结或有时只需几分钟。

这个问题在我的测试系统上也没有发生,只在生产中出现。据我所知,我创建了thread-safe所有内容,但我没有收到任何错误提示。并且它在没有冻结的情况下执行相同代码的事实表明如果出现问题,它应该显示得相对较快。

我有什么方法可以尝试捕获这些冻结。我try/catch几乎可以尝试捕捉任何不规则的东西。

0 个答案:

没有答案