「pClassはガベージコレクションされますか」という特定の質問の場合:イベントサブスクリプションは、(発行者としての)pClassのコレクションに影響を与えません。
一般的なGC(特にターゲット)の場合:MyFunctionが静的かインスタンスベースかによって異なります。
インスタンスメソッドへのデリゲート(イベントサブスクリプションなど)には、インスタンスへの参照が含まれます。つまり、イベントサブスクリプションはGCを妨げます。ただし、イベントをパブリッシュするオブジェクト(上記のpClass)が収集の対象になるとすぐに、これは問題でなくなります。
これは一方向であることに注意してください。つまり、私たちが持っている場合:
publisher.SomeEvent += target.SomeHandler;
その場合、「パブリッシャー」は「ターゲット」を存続させますが、「ターゲット」は「パブリッシャー」を存続させません。
だからいいえ:とにかくpClassが収集される場合は、リスナーの登録を解除する必要はありません。ただし、pClassの寿命が長い(MyFunctionのインスタンスよりも長い)場合、pClassはそのインスタンスを存続させることができるため、ターゲットを収集する場合はサブスクライブを解除する必要があります。
ただし、静的イベントはこのため、インスタンスベースのハンドラーと一緒に使用すると非常に危険です。