Angenommen, ich habe ein Objekt, das für die Dauer einer Anwendung existiert. Nennen wir es GlobalWorker. GlobalWorker hat Ereignisse, z.B. UserLoggedIn, auf die sich andere Objekte subskribieren können. Stellen Sie sich vor, ich habe eine Silverlight-Seite oder eine asp.net-Seite oder etwas, das das UserLoggedIn-Ereignis abonniert, wenn es erstellt wird.Eventhandler und Anwendung Lebensdauer Objekte in C# - sollte ich abhaken?
Besteht die Existenz dieses Ereignisses verhindern, dass die Seite Müll gesammelt wird? Wenn ja, welches ist das beste Muster für diese Instanz: schwache Event-Handler, verschieben Sie das Abonnement zum Load-Ereignis und kündigen Sie es im UnLoad-Ereignis ab?
Es ist ein häufiges Problem in Windows Forms. –
Heck, es ist sogar ein Problem ist JavaScript! – Gabe
Ist das 'schwache Ereignis'-Muster vorzuziehen, um einfach den Ereignishandler in den Listener-Klassen aufzuheben, weil es allgemeiner ist (und weniger [redundanten] Code benötigt)? –