Ich habe eine sehr einfache WPF-App, die verwendet wird, um Bilder in einem bestimmten Ordner Bild für Bild eine Vorschau zu zeigen. Sie können es sich als Windows Image Viewer-Klon vorstellen. Die App verfügt über ein PreviewKeyUp-Ereignis, mit dem das vorherige oder nächste Bild im Ordner geladen wird, wenn der Linkspfeil oder die Rechtspfeiltaste gedrückt wird.Speicherverlust beim Laden mehrerer Bilder in WPF vermeiden
Das Problem, das ich versuche zu lösen ist, dass es eine große Menge an Speicher aufgebläht wird, wenn mehrere Bilder geladen werden, bis Garbage Collection stattfindet. Sie können dies in dem Screenshot sehen, den ich von der Speicherbelegung der App gemacht habe. Es ist nicht ungewöhnlich, dass es 300 MB überschreitet, bevor die Garbage Collection stattfindet.
Ich habe versucht, das Bild in einer using-Anweisung Einwickeln, aber das funktioniert nicht, weil Bitmap IDisposable nicht implementiert.
Was kann ich tun, um Speicherprobleme beim Laden mehrerer Bilder in meine App zu vermeiden?
Sie auch bei dieser einen Blick nehmen möchten: https://stackoverflow.com/a/6271982/1136211 – Clemens