什么是垃圾回收过程中的参考处理

时间:2019-07-02 06:59:55

标签: java reference garbage-collection g1gc

我正在阅读有关G1 GC的信息,并且在Young收集和并发标记循环步骤中都有称为“参考处理”和“参考要求”的过程。这些过程到底是什么?在那里会发生什么?

1 个答案:

答案 0 :(得分:0)

引用处理是专用于处理特殊引用对象(例如弱引用,终结器,JNI引用)的阶段。

特殊参考文献有两个重要方面

  • 对于对象的可达性(例如弱引用),它们可能具有特殊的语义
  • 由于GC工作的缘故,可能需要将引用对象添加到引用队列中

在正常GC阶段,参考对象是进行后处理的队列。

“ Ref Proc”阶段在主GC阶段之后开始,因此知道哪些对象可以存活,哪些没有,因此可以应用引用语义。

随后完成“引用查询”,以将引用放入引用队列(引用队列是堆上的Java对象,通常用于实现由特殊引用启用的模式)。