我关心的一件事是我发现了两种注册事件代表的方法。
- OnStuff += this.Handle;
- OnStuff += new StuffEventHandler(this.Handle);
第一个是干净的,执行“OnStuff -= this.Handle;”是有意义的 从事件中注销...但是对于后一种情况,我应该执行“OnStuff -= new StuffEventHandler(this.Handle);”吗?感觉就像我根本没有删除任何东西,因为我正在抛出另一个 StuffEventHandler 参考。事件是否通过引用比较委托?我担心我会在这里启动一个令人讨厌的内存池。找我?我没有对我之前注册的“新 StuffEventHandler”的引用。
做#1的缺点是什么?
做#2有什么好处?