Для конкретного вопроса «Будет ли pClass собирать мусор»: подписка на событие не влияет на сборку pClass (как издателя).
Для GC в целом (в частности, для цели): это зависит от того, является ли MyFunction статической или основанной на экземплярах.
Делегат (такой как подписка на событие) для метода экземпляра включает в себя ссылку на экземпляр. Так что да, подписка на событие помешает GC. Однако, как только объект, публикующий событие (pClass выше), подходит для сбора, это перестает быть проблемой.
Обратите внимание, что это односторонний; т.е. если у нас есть:
publisher.SomeEvent += target.SomeHandler;
тогда «издатель» будет поддерживать «цель» живым, но «цель» не будет поддерживать «издателя» живым.
Так что нет: если pClass будет собираться в любом случае, нет необходимости отписываться от слушателей. Однако, если Pclass был долгожителем (больше , чем например , с MyFunction), то Pclass может сохранить этот экземпляр живым, так что это было бы необходимо отказаться , если вы хотите, чтобы цель , чтобы быть собраны.
Однако по этой причине статические события очень опасны при использовании с обработчиками на основе экземпляров.