1

我们有一个 CF.NET 3.5 应用程序,在出现特定错误之前似乎可以正常工作大约 4 小时:一旦出现错误,在调用相应的 ..._MouseDown 事件之前,在鼠标单击后会有大约 30 秒的延迟。这向我表明消息泵存在一些损坏,或者可能是 Windows 消息队列中的内容过多。任何人都可以提出有关如何攻击此错误的想法,特别是因为每次尝试都需要至少 4 个小时来测试...
谢谢!
PS - 大量非托管代码混合在一起,C++ 错误会与 .Net 消息队列混淆吗?

4

1 回答 1

1

需要检查的几点:

  • 阻塞消息队列的方法调用。
  • 设置为某个小间隔的 System.Windows.Forms.Timer 实例。
  • 在 GUI 线程(irda、串行端口等)中执行的对某些硬件设备的非异步 IO 访问
于 2011-05-09T18:53:22.253 回答