【发布时间】:2014-12-04 12:24:56
【问题描述】:
我正在尝试了解垃圾收集机制,并且我正在研究代算法,并且我有一个关于年轻/老一代差异的问题。我读到开始在年轻代 GC 中收集对象是从 GC 根开始标记它们以找到活动的对象,通常它将它们复制到幸存者空间,清除年轻代区域,瞧。
如果我们从 GC 根开始并开始遍历活动对象,我不明白我们是否也在老一代中找到对象?这是否意味着当我们在旧空间中击中一个对象时,我们会在该点停止跟踪引用还是什么?
【问题讨论】:
-
简单的答案是肯定的。年轻代集合不会跟踪/标记老一代中的对象。当年轻代收集器发现一个年轻到老的引用时,它会忽略它。