csharp / intermediate
Snippet
Deterministisches Bereinigen von Ressourcen mit IDisposable
Das IDisposable-Interface wird verwendet, um einen Mechanismus zum Freigeben nicht verwalteter Ressourcen bereitzustellen, wie z. B. Datei-Handles oder Datenbankverbindungen, die der Garbage Collector nicht automatisch verarbeiten kann.
snippet.csharp
1
2
3
4
5
6
7
8
public class Logger : IDisposable{private StreamWriter _writer = new StreamWriter("log.txt");public void Dispose(){_writer?.Dispose();}}
Erklärung
1
IDisposable
Ein Interface, das die Implementierung einer einzigen 'Dispose'-Methode erfordert.
2
Dispose()
Diese Methode sollte die Logik zum Schließen oder Freigeben aller vom Objekt gehaltenen Ressourcen enthalten.