【发布时间】:2008-12-28 23:27:09
【问题描述】:
我有一个由 TlbImp.exe 生成的互操作程序集,生成的类事件较多,性能非常重要。
但是有一个问题,事件似乎以这样的方式注册/取消注册/调用,即使是空的事件处理程序也被计算在内。 给定一组 1..N 事件,当您将处理程序注册到事件 3 时,它看起来像这样:
{dummy1, dummy2, eventHandler3, dummy4 ... dummyN}
当有很多经常引发的事件时,这会产生很大的开销。
所以问题是,有没有更好的方法来处理 .NET 中的 COM 事件?有什么工具什么的,还是我必须从头开始重写互操作程序集的事件代码?
【问题讨论】:
-
您能否提供代码示例让我们在我们的机器上重现该问题?
标签: c# .net com interop com-interop