Java CMS GC - начальная оценка - PullRequest
0 голосов
/ 14 мая 2018

Я читаю о CMS GC и нуждаюсь в пояснениях.На сайте мы можем найти:

Фаза 1: Начальная отметка.Это одно из двух событий «останови мир» во время CMS.Цель этого этапа - отметить все объекты Старого поколения, которые являются прямыми корнями GC или ссылаются на какой-либо живой объект в Молодом поколении.Последнее важно, поскольку Старое Поколение собирается отдельно.

Необходимо найти ссылки от Молодого поколения к Старому, но как на этом этапе сканируется Молодое поколение?Это полное сканирование, как в минорном GC?

1 Ответ

0 голосов
/ 14 мая 2018

Должны быть найдены ссылки от Молодого поколения к Старому, но как на этом этапе сканируется Молодое поколение?Это полное сканирование, как в незначительном GC?

Да. Сканируется все молодое пространство.

Нет. Это не похоже нанесовершеннолетний GC.Молодой (младший) GC не сканирует все молодое пространство.Young collection пересекает граф объектов, посещая (и копируя) только живые объекты.

Как вы можете догадаться, из первого описания может потенциально внести большой вклад в паузу GC.CMS обычно делает начальную отметку «вскоре после», когда молодой GC завершает работу, предполагая, что в это время молодой космос мал.

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...