Введение в сборщик мусора 0:02 Сборщик мусора GC - ключевой компонент платформы .NET. Видео посвящено ключевым аспектам работы сборщика мусора. В предыдущих частях обсуждалась работа памяти в .NET.
Пример работы сборщика мусора 1:01 Пример с сайтом и микросервисом. Создание объектов в куче при обработке данных. Необходимость удаления объектов для освобождения памяти.
Поколения объектов 2:00 Три поколения объектов: нулевое, первое и второе. Нулевое и первое поколения называются эфемерными. Полная остановка приложения для активации сборщика мусора.
Анализ поколений 2:53 Сборщик мусора проверяет, используются ли объекты. Удаление неиспользуемых объектов и повышение номера поколения. Минимизация простоя приложения за счет анализа части памяти.
Предположения сборщика мусора 4:16 Чем ниже поколение объекта, тем вероятнее его удаление. Чем выше поколение, тем вероятнее объект останется в памяти. Примеры использования объектов разных поколений.
Куча для больших объектов 5:17 Ларч джек хип для объектов размером более 85 КБ. Большие объекты создаются сразу с поколением номер два. Дефрагментация не проводится для больших объектов.
Графы объектов 7:11 Создание графов объектов для определения востребованности объектов. Статические и локальные объекты как связи в графе. Удаление недостижимых объектов.
Деструкторы и финализация 10:09 Деструктор выполняет действия перед удалением объекта. Неуправляемые ресурсы и небезопасные конструкции. Очередь финализации для объектов с деструкторами.
Заключение 11:45 Обзор работы сборщика мусора в .NET. Взаимодействие стека, кучи и GC-коллектора. Призыв подписаться на канал для новых роликов.