Размер одного поколения влияет на пропускную способность другого поколения в сборке мусора. - PullRequest
0 голосов
/ 26 мая 2019

Как влияние изменения размера поколения (скажем, младшего поколения) влияет на частоту сбора и время паузы других поколений (скажем, поколения с постоянным владением)?

В этой статье https://www.oracle.com/technetwork/java/gc-tuning-5-138395.html этоприближается без эффекта.Я хочу понять причину этого приближения.

1 Ответ

0 голосов
/ 28 мая 2019

Здесь необходимо учесть, что основными факторами, которые контролируют время паузы ГХ, являются скорость выделения объектов и скорость, с которой эти объекты становятся мусором.

Также важно понимать, что (в Hotspot) молодое и старшее поколения используют разные алгоритмы.

Для молодого поколения коллекция - это просто копирование объектов в пространство выживших или пребывание в старом поколении. Как велик старый ген. Это будет иметь влияние, только если недостаточно места для продвижения всех необходимых объектов.

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

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