Sollte Dispose() oder Finalize() verwendet werden, um temporäre Dateien zu löschen?

Habe ich eine Klasse, die macht die Verwendung von temporären Dateien ( Path.GetTempFileName() ), während es aktiv ist. Ich möchte sicherstellen, dass diese Dateien nicht auf der Festplatte des Benutzers Platz wegnimmt, nachdem mein Programm geschlossen ist. Jetzt meine Klasse hat eine Close() Methode, die prüft, ob alle temporären Dateien, die von der Klasse noch vorhanden ist und löscht Sie.

Würde es mehr Sinn machen, diesen code in der Dispose () - oder Finalize () - Methoden statt?

Seien Sie vorsichtig mit Nachzügler. Es ist möglich, dass das system gesperrt und eine temp-Datei aus welchem Grund auch immer-und die entf-Fehler bei der Entsorgung. Müssen Sie immer noch entfernen Sie diese irgendwann wenigstens haben Sie einen Haufen von zombies, die auf Ihrem Dateisystem.

InformationsquelleAutor Eric Anastas | 2010-07-13

Schreibe einen Kommentar