Как делает Мусор Первая работа Сборщика "мусора"?

Кто-то может объяснить, как Сборщик "мусора" G1 работает? Я не смог найти любые всесторонние, легкие для понимания описания где угодно все же.

Спасибо

43
задан dogbane 21 May 2010 в 12:02
поделиться

1 ответ

Сборщик разбивает кучу на регионы фиксированного размера и отслеживает текущие данные в этих регионах. Он хранит набор указателей - «запомненный набор» - в и из региона. Когда сборщик мусора считается необходимым, он сначала собирает регионы с меньшим количеством оперативных данных (следовательно, «сначала мусор»). Часто это может означать сбор всей области за один шаг: если количество указателей в области равно нулю, тогда не нужно делать отметку или развертку этой области.

Для каждого региона он отслеживает различные показатели, которые описывают, сколько времени потребуется, чтобы их собрать. Вы можете задать ему мягкое ограничение в реальном времени на время паузы, а затем он попытается собрать как можно больше мусора за это ограниченное время.

Есть разговор JavaOne о G1 и несколько статей по этой теме:

43
ответ дан 26 November 2019 в 22:55
поделиться
Другие вопросы по тегам:

Похожие вопросы: