Warum verwendet die Implementierung von Ereignissen in C # standardmäßig kein schwaches Ereignismuster?

Diese Frage kann zu spekulativen Antworten führen, aber ich gehe davon aus, dass hinter der Implementierung von @ eine wohlüberlegte Entwurfsentscheidung steckevent im c #.

Das Ereignismuster in c # hält den Abonnenten am Leben, solange der Herausgeber der Veranstaltung am Leben ist. Wenn Sie sich also nicht abmelden, geht Speicher verloren (also nicht wirklich - aber der Speicher bleibt unnötig belegt).

Wenn ich dies verhindern möchte, kann ich mich von Ereignissen abmelden oder ein schwaches Ereignismuster implementieren als vorgeschlagen bei MSDN.

Mit dem Ereignismuster, das so viele Probleme verursacht (für Anfänger?), Stellt sich die Frage: Warum wurde die Entscheidung getroffen, dass der Verlag einen starken Bezug zum Abonnenten beibehält, anstatt diese unabhängig zu machen oder den Entwicklern das explizite Vorhandensein eines @ zu ermöglichestrong oderweak modifier?

Es gibt bereits ein paarFrage hier über dieses Thema und die Antworten klingen vernünftig, aber keiner antwortet wirklich, warum es so ist wie es ist.