Вероятно, уже очевидно из комментария Хольгера, но это не будет присутствовать на уровне байт-кода, а будет сгенерировано JIT
.
Лучшее объяснение в самом исходном коде, который в некоторых случаях отлично и время от времени очень ясно:
G1 также требуется отслеживать ссылки на объекты между различными регионами, чтобы обеспечить эвакуацию старых областей, что делается как часть смешанных коллекций. Ссылки отслеживаются в запомненных наборах и постоянно обновляются, так как ссылки записываются с помощью постбарьера .
Вы также можете найти, какие запомненные наборы , например, , или как они построены.
И здесь - это метод post_barrier
, используемый C2
компилятором. Хотя некоторые вещи, которые я могу понять из этого исходного кода, некоторые слишком сложны для меня, поэтому я рад читать код :)