几年前,我读了一本书,描述了如何使用自己的处理器覆盖 .NET 中的默认事件“调度程序”实现。
class foo {
public event EventHandler myEvent;
...
}
...
myFoo.myEvent += myBar1.EventHandler;
myFoo.myEvent += myBar2.EventHandler;
每当事件触发时,都会调用 myBar1 和 myBar2 处理程序。
我记得,这个循环的默认实现使用一个链表并简单地遍历该列表并按顺序调用 EventHandler 委托。
我的问题有两个:
- 有人知道我在读哪本书吗?
- 为什么要覆盖默认实现(可能会在书中回答)?
编辑:我指的这本书确实是 Jeffrey Richter 通过 C# 编写的 CLR