Как работает Garbage Collector?

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

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

Что ответить на собеседовании

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

Подробный разбор

Ответ с пояснениями

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

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

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

ИИ-помощник для собеседований

Хочешь уверенно проходить собеседования?

Попробуй ИИ-помощник для собеседований: слышит вас и собеседника, анализирует экран, подсказывает ответы в реальном времени, работает без VPN и не попадает в захват экрана.

Подробнее