Sobes.tech
Junior — Middle

Puoi fare un esempio di una situazione in cui viene utilizzato il pattern IDisposable per gestire le risorse?

sobes.tech AI

Risposta dell'AI

Il pattern IDisposable viene utilizzato per gestire risorse non gestite, come descrittori di file, connessioni di rete, stream, ecc. Il suo scopo è garantire il rilascio delle risorse quando l'oggetto non è più necessario.

Esempio: lavorare con un file. La classe FileStream implementa IDisposable per chiudere il file e liberare il descrittore dopo l'uso.

using (var stream = new FileStream("file.txt", FileMode.Open))
{
    // Lavorare con il file
}
// Qui, stream.Dispose() viene chiamato automaticamente, il file viene chiuso

L'uso della costruzione using garantisce la chiamata a Dispose, anche in caso di eccezioni.