Sobes.tech
Junior — Middle

Magyarázza el az IDisposable interfész célját és használatát a .NET-ben

sobes.tech MI

Válasz az MI-től

A .NET-ben az IDisposable interfész arra szolgál, hogy felszabadítsa a nem kezelt erőforrásokat, például fájlokat, hálózati kapcsolatokat, leírókat stb. Tartalmaz egy Dispose() nevű metódust, amelyet a források explicit felszabadítására hívnak meg.

Az IDisposable használata lehetővé teszi az erőforrások felszabadításának időpontjának ellenőrzését, ami fontos a memória szivárgások és zárolások megelőzése érdekében.

Használati példa:

class ResourceHolder : IDisposable
{
    private FileStream fileStream;

    public ResourceHolder(string filePath)
    {
        fileStream = new FileStream(filePath, FileMode.Open);
    }

    public void Dispose()
    {
        fileStream?.Dispose();
    }
}

// Használat a using utasítással
using (var resource = new ResourceHolder("file.txt"))
{
    // Erőforrással való munka
}
// A using-ból való kilépéskor automatikusan meghívódik a Dispose()

Így az IDisposable segít az erőforrások életciklusának kezelésében és biztosítja azok helyes felszabadítását.