Was ist der beste Weg, um Speicherverluste zu vermeiden, die in WPF PRISM/MVVM-Anwendung

Ich habe eine WPF-Anwendung basierend auf PRISM, nutzt das MVVM-Muster.

Habe ich bemerkt, dass gelegentlich meine Sicht der models, views und alles, was mit Ihnen verbunden wird hängen, um lange nach Ihrer vorgesehenen Lebensdauer.

Einem Leck beteiligt abonnieren CollectionChanged-auf eine Erhebung der Zugehörigkeit zu einer injizierten service, anderen beteiligten nicht den Aufruf der Stop-Methode auf ein DispatcherTimer, und noch ein weiteres benötigt, eine Sammlung aufgeräumt werden, der Artikel.

Fühle ich mich mit einem CompositePresentationEvent ist wahrscheinlich besser Abonnement, um CollectionChanged, aber in den anderen Szenarien, ich bin Neigung in Richtung der IDisposable implementiert und haben die Aussicht auf die Dispose-Methode für das anzeigen von Modellen.

Aber dann muss etwas sagen, die anzeigen, Wann rufen Sie Dispose auf die Ansicht Modell, das wird noch weniger attraktiv, wenn die Komplexität der den views erhöhen, und Sie beginnen, einschließlich der untergeordneten Ansichten.

Was denken Sie, ist der beste Ansatz, um das handling Modelle anzeigen, um sicherzustellen, dass Sie nicht ein Speicherleck?

Vielen Dank im Voraus

Ian

InformationsquelleAutor Ian Oakes | 2009-12-07
Schreibe einen Kommentar