Что такое сборщик мусора (Garbage Collection) в C#?

Этот вопрос проверяет понимание механизма управления памятью в .NET, особенно работы сборщика мусора (GC).

Короткий ответ

Сборщик мусора в C# автоматически управляет памятью, освобождая память, занятую объектами, которые больше не используются. Это помогает избежать утечек памяти и улучшает управление ресурсами.

Длинный ответ

Сборщик мусора (GC) является важной частью среды выполнения .NET (CLR) и занимается автоматическим управлением памятью. Когда объект больше не используется в программе (например, когда на него не осталось ссылок), сборщик мусора освобождает память, которую он занимал. Это важно для предотвращения утечек памяти.

 

В процессе работы GC наблюдает за управляемыми объектами, и когда память в куче превышает определенный порог или система сталкивается с нехваткой памяти, сборщик мусора автоматически запускается для освобождения неиспользуемых объектов.

 

Пример:

class Example
{
    public static void Main()
    {
        var obj = new object();  // Объект в куче
        // Когда obj выходит из области видимости, GC может освободить память
    }
}

В данном примере сборщик мусора может освободить память, занятую объектом, после того, как он выйдет из области видимости.

Уровень

  • Рейтинг:

    2

  • Сложность:

    6

Навыки

  • C#

Подпишись на C# Developer в телеграм