Zitat: |
Müsste ich nicht vor jedem Ladevorgang ein Bild freigeben, bevor ich das nächste lade? |
Musst du nicht, kannst du aber.
das ist in der Regel nicht nötig, weil der Garbage Collecor (GC) das ganze automatisch erledigt. Ich habe mal eine Bildverarbeitung geschrieben, wo ich nichts mit Dispose freigegeben habe, das hat funktioniert. Leider hat es auch die vollen 8 GB RAM genutzt ^^ Jetzt ein Dispose an der passenden Stelle und der RAM Verbrauch bleibt im Rahmen.
Es gibt natürlich Klassen (insb. Sachen die mit Grafik zu tun haben) da sollst du Dispose aufrufen, wenn du die nicht mehr brauchst. Generell gilt, wenn die Klasse IDisposable implementiert, solltest du nach Benutzung .Dispose() aufrufen oder direkt ein using(){} verwenden. Weil der GC zwar seine Arbeit selbstständig macht, aber er macht sie dann eben auch wann
er will.
Siehe auch
msdn.microsoft.com/d...tem.idisposable.aspx