Para la pregunta específica "¿Se recolectará basura pClass?": La suscripción al evento no tiene ningún efecto en la recolección de pClass (como el editor).
Para GC en general (en particular, el objetivo): depende de si MyFunction es estático o está basado en instancias.
Un delegado (como una suscripción de evento) a un método de instancia incluye una referencia a la instancia. Entonces, sí, una suscripción a un evento evitará GC. Sin embargo, tan pronto como el objeto que publica el evento (pClass arriba) sea elegible para la recopilación, esto deja de ser un problema.
Tenga en cuenta que esto es unidireccional; es decir, si tenemos:
publisher.SomeEvent += target.SomeHandler;
entonces "publicador" mantendrá "objetivo" vivo, pero "objetivo" no mantendrá vivo "editor".
Entonces no: si pClass se va a recopilar de todos modos, no hay necesidad de cancelar la suscripción de los oyentes. Sin embargo, si pClass fue de larga duración (más larga que la instancia con MyFunction), entonces pClass podría mantener viva esa instancia, por lo que sería necesario darse de baja si desea que se recopile el objetivo.
Sin embargo, los eventos estáticos, por este motivo, son muy peligrosos cuando se usan con controladores basados en instancias.