Junior — Middle
Explica scopul și utilizarea interfeței IDisposable în .NET
sobes.tech AI
Răspuns de la AI
Interfața IDisposable din .NET este destinată să elibereze resursele necontrolate, cum ar fi fișierele, conexiunile de rețea, descriptorii etc. Conține o metodă — Dispose(), care este apelată pentru eliberarea explicită a resurselor.
Utilizarea IDisposable permite controlul momentului în care resursele sunt eliberate, ceea ce este important pentru prevenirea scurgerilor de memorie și blocărilor.
Exemplu de utilizare:
class ResourceHolder : IDisposable
{
private FileStream fileStream;
public ResourceHolder(string filePath)
{
fileStream = new FileStream(filePath, FileMode.Open);
}
public void Dispose()
{
fileStream?.Dispose();
}
}
// Utilizare cu instrucțiunea using
using (var resource = new ResourceHolder("file.txt"))
{
// Lucru cu resursa
}
// După ieșirea din using, Dispose() este apelat automat
Astfel, IDisposable ajută la gestionarea ciclului de viață al resurselor și asigură eliberarea lor corectă.