Алгоритм генерации и сбора мусора в Java работает в три этапа: 1
Для оптимизации сборки мусора память кучи дополнительно разделена на четыре области. 2 В эти области объекты помещаются в зависимости от их возраста (как долго они используются в приложении). 2
Малая сборка (minor collection) происходит при заполнении областей молодого поколения. 3 Большинство молодых объектов умирают и подлежат удалению, но если какие-то из них всё ещё используются на момент GC, они перемещаются в область Выживших 0 или 1, а оттуда в Хранилище. 3 При заполнении Хранилища происходит основная сборка (major collection). 3 Основная сборка обычно занимает больше времени из-за большего количества объектов. 3