Алгоритмы GC в Java // бесплатный урок OTUS
Java GC: Mark-Sweep-Compact и поколения
Коротко о Mark-Sweep Чтобы чистить ненужные объекты GC делает так:
1. Обходит граф всех объектов в хипе (heap) и помечает их
2. Не помеченные объекты никто не использует - их можно удалить. Пример кода Рассмотрим такой код: Так будет выглядеть дерево зависимостей для каждого телефона Nokia. Коротко о поколениях Чтобы каждый раз не обходить полностью весь граф объектов, GC разделяет объекты на поколения: Объекты из Old generation хранятся в Old регионе GC. Объекты из Young generation хранятся в регионах Eden или Survivor...
Как работает Garbage Collector в Java
Java славится своей автоматической управляемой памятью. Одним из ключевых механизмов, обеспечивающих стабильность и безопасность приложений, является Garbage Collector (GC) — система автоматической сборки мусора. В этой статье мы разберём: Garbage Collector (GC) — это часть Java Virtual Machine (JVM), которая автоматически освобождает память, выделенную под объекты, которые больше не используются. Он позволяет: Основной принцип: Корни (Roots) включают: Процесс сборки мусора состоит из нескольких этапов: 1...