如何在c#中处理非常快的事件?

时间:2012-06-18 16:13:12

标签: c# events com

我正在编写一个与外部COM对象交互的程序(.net 4)。为了有一个“实时”程序,我正在更改程序,从轮询COM对象,然后进行计算,从COM对象接收事件。

我的问题是事件太快了。据我所知(在调试模式下),有些事件被遗漏等等。

具体问题是:

  1. 我(或C#)如何确保抓住并处理所有事件?
  2. 如何构建主要等待事件(如果事件之间有很长时间)而不是结束?
  3. 我已经尝试过一个带有无限循环的main,它会休眠一毫秒,然后旋转一个线程,但这只是一个大麻烦。

    感谢您的时间

1 个答案:

答案 0 :(得分:0)

  

我(或C#)如何确保捕获并处理所有事件?

BackgroundWorkers非常适合这样的问题: -

  

如何构建主要等待事件(如果有很长时间)   事件之间的时间)而不是结束?

您应该使用Timer继续轮询事件。您只需处理收到的数据即可。

如果没有更多信息,这个问题将难以更详细地回答......