Junior — Middle
Spiega lo scopo e l'uso dell'interfaccia IDisposable in .NET
sobes.tech AI
Risposta dell'AI
L'interfaccia IDisposable in .NET è progettata per liberare risorse non gestite, come file, connessioni di rete, descrittori, ecc. Contiene un metodo — Dispose(), che viene chiamato per liberare esplicitamente le risorse.
L'uso di IDisposable consente di controllare il momento in cui le risorse vengono liberate, il che è importante per prevenire perdite di memoria e blocchi.
Esempio di utilizzo:
class ResourceHolder : IDisposable
{
private FileStream fileStream;
public ResourceHolder(string filePath)
{
fileStream = new FileStream(filePath, FileMode.Open);
}
public void Dispose()
{
fileStream?.Dispose();
}
}
// Uso con l'istruzione using
using (var resource = new ResourceHolder("file.txt"))
{
// Lavorare con la risorsa
}
// Dopo l'uscita dall'using, Dispose() viene chiamato automaticamente
In questo modo, IDisposable aiuta a gestire il ciclo di vita delle risorse e garantisce il loro rilascio corretto.