JVM垃圾收集:“幸存者1”和“幸存者2”有什么区别?

JVM垃圾收集:“幸存者1”和“幸存者2”有什么区别?

在Oracle的Java虚拟机的垃圾收集器中,“幸存者1”和“幸存者2”分别扮演什么角色?

物体是否总是像这样移动:伊甸园 → 幸存者 1 → 幸存者 2

或者物体可以直接从伊甸园跳转到幸存者2吗?

“幸存者 3” 是否没有意义,或者还可以但被认为两个就足够了?

答案1

Survivor1 和 Survivor2 交替使用。Minor GC 扫描一个 Survivor 空间中的所有内容,并将仍需要的所有内容移至另一个 Survivor 空间,因此恰好需要两个 Survivor。

相关内容