并行EventHandler

我希望毫不拖延地同时通知我class级的活动订阅者。

我应该滚动自己的事件处理程序; 使用FCL中的一些支持并行性; 或默认内置System.EventHandler支持这种事件通知方式?

您可以对任何委托使用MulticastDelegate.GetInvocationList ,然后只是并行调用所有组件委托。 这可能是最简单的方法。

(它返回Delegate[]但你可以将每个实例强制转换为正确的类型。你甚至可以自己抛出数组 – 我不记得究竟它实际创建了什么类型的数组。)