我有一个独立的WPF应用程序运行在.NET 3.5上。时不时地,显示器会冻结几秒钟。这在频繁更新内容的屏幕上最为明显。这是问题的视频。
当显示器被冻结时,界面仍然保持响应 (视频)。
我找到了一些其他帖子,他们也遇到了类似的问题,认为这是软件/硬件渲染问题。为了安全起见,我完全禁用了硬件加速,但问题仍然存在。
在冻结期间,我运行了文件监视器,以查看是否有异常的文件访问或活动,但没有发现任何异常情况。
最后注意:目标平台是一台内存和处理能力都不太强的小型触摸屏面板电脑(512 MB)。我只在目标设备上看到这个问题,而在我的开发PC上从未出现过,因为我的开发PC资源更加充足。
更新
我以为通过删除一些动画代码来解决问题,但它没有起作用。我仍然遇到问题,现在已经束手无策了。
以下是我尝试过的一些方法:
- 升级到.NET 4.0。行为相同。
- 对所有可能通过DispatcherTimer调用的方法(在UI线程上调用)添加调试代码,以确保它们没有阻塞UI。
我真的很困惑,在这里添加了一个赏金。正如我所提到的,这个问题只发生在目标PC上(链接)。