сборка мусора java о ZGC и G1
В чем разница между набором перемещения ZGC и набором сбора G1 в Java?I и изучением сборки мусора JAVA, и я не уверен в этом.
1 ответ
Collection Set
это регионы, G1
считает, что смотреть дальше. G1
, в mark
Этап, будет вычислять некоторые метаданные о каждом регионе, одна из этих метаданных - информация о том, сколько живого в каждом из них. Он также знает, сколько времени потребовалось при предыдущем запуске, чтобы вернуть мертвые объекты в каждом регионе. Чтобы достичь цели тайм-аутов, он выбирает регионы с наибольшим количеством мусора и обрабатывает их. Эти регионы называются:collection set
.
Relocation Set
в основном то же самое, по крайней мере, логически. ZGC
выбирает регионы (они их называют pages
) с большим количеством мусора. Сначала он перемещает корни сборщика мусора, а затем одновременно пересекает этотRelocation Set
.
Таким образом, по сути, они логически близки к одному и тому же, поскольку эти GC делают что-то совершенно по-другому, это граница, в которой должно быть проведено их сходство, IMO.