【发布时间】:2020-12-24 15:05:06
【问题描述】:
在阅读有关 ZGC 的文章时,我注意到它吹嘘自己是“单代垃圾收集器”,但我很少看到有关该术语确切含义的任何细节。
正常的分代GC
我熟悉 Eden、幸存者空间、托儿所、临终关怀、元空间、permgen、僵尸对象、诺亚方舟和养老院,所以我不需要解释并发标记扫描(CMS GC)或垃圾优先(G1 GC)算法工作。我的理解是这些都是多代的,我对此很满意。
就个人而言,我一直很喜欢能够通过 Java Mission Control 来查看一个对象经历了多少代 GC 周期。这对于解决内存泄漏或 GC 问题总是很有帮助。
单代与多代 GC
那么究竟什么是“单代”垃圾收集器,它与当前在 CMS 和 G1 中通过多个垃圾收集周期跟踪对象的方式有何不同?
【问题讨论】:
标签: java garbage-collection jvm jvm-hotspot