Встречается на собеседованиях • сегодня

Как происходит сборка мусора в JVM

Сборка мусора (GC) в JVM автоматически освобождает память от неиспользуемых объектов. Основные принципы: 1. **Поколенная модель** (Generational GC) – объекты делятся на: - **Young Generation** (Eden + Survivor spaces) – здесь чаще происходит сборка (Minor GC) - **Old Generation** – долгоживущие объекты (Major GC/Full GC) 2. **Алгоритмы**: - **Mark-Sweep-Compact** – помечает живые объекты, удаляет мёртвые, уплотняет память - **G1 (Garbage-First)** – делит кучу на регионы, оптимизирует паузы - **ZGC/Shenandoah** – низколатентные алгоритмы Пример утечки памяти: ```java List leak = new ArrayList<>(); while(true) { leak.add(new Object()); // Объекты не удаляются } ``` Критические параметры GC: - `-Xmx` – максимальный размер кучи - `-XX:+UseG1GC` – включение G1 сборщика GC работает в отдельном потоке и вызывает "stop-the-world" паузы при полной сборке.
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы