Sobes.tech
Back to questions
Junior — Middle
66

Какое назначение у интерфейса IDisposable в программировании на C#?

Companies where asked
bip.ru

Answer from AI

sobes.tech AI

Интерфейс IDisposable в C# предназначен для освобождения неуправляемых ресурсов, таких как файловые дескрипторы, соединения с базой данных, сетевые сокеты и т.п. Он содержит один метод Dispose(), который вызывается для явного освобождения этих ресурсов, когда объект больше не нужен.

Использование IDisposable помогает избежать утечек ресурсов и гарантирует, что они будут корректно освобождены вне работы сборщика мусора.

Пример использования:

using (var stream = new FileStream("file.txt", FileMode.Open))
{
    // Работа с файлом
} // Здесь автоматически вызывается stream.Dispose()

В этом примере using гарантирует вызов Dispose(), что освобождает файл после использования.