私が懸念していることの 1 つは、デリゲートをイベントに登録する 2 つの方法を発見したことです。
- OnStuff += this.Handle;
- OnStuff += 新しい StuffEventHandler(this.Handle);
最初のものはきれいで、「OnStuff -= this.Handle;」を実行するのは理にかなっています。イベントから登録を解除するには...しかし、後者の場合、「OnStuff -= new StuffEventHandler(this.Handle);」を行う必要がありますか? 別の StuffEventHandler 参照を投入しているので、何も削除していないように感じます。イベントは参照によってデリゲートを比較しますか? ここで厄介なメモリプールを開始できるのではないかと心配しています。私を取得しますか?以前に登録した「新しい StuffEventHandler」への参照がありません。
#1を行うことの欠点は何ですか?
#2を行う利点は何ですか?