Junior — Middle
104
Расскажи о применении управляемых ресурсов в C# и зачем они нужны
Answer from AI
sobes.tech AI
В C# управляемые ресурсы — это объекты, которые управляются средой выполнения .NET (CLR), например, память, выделенная под объекты, автоматически освобождается сборщиком мусора. Однако некоторые ресурсы, такие как файловые дескрипторы, соединения с базой данных или сетевые сокеты, требуют явного освобождения.
Для этого используется интерфейс IDisposable и метод Dispose(), который позволяет освободить неуправляемые ресурсы своевременно. Обычно это реализуется через конструкцию using, которая гарантирует вызов Dispose даже при возникновении исключений.
Пример:
using (var file = new StreamReader("file.txt"))
{
string content = file.ReadToEnd();
}
// Здесь Dispose вызывается автоматически
Это помогает избежать утечек ресурсов и повышает надежность приложения.