开发者社区> 问答> 正文

前沿实践中Shenandoah 垃圾回收器算法实现具体过程是什么?

前沿实践中Shenandoah 垃圾回收器算法实现具体过程是什么?

展开
收起
游客x3a254b44ahsk 2022-05-09 19:36:56 326 0
来自:阿里技术
1 条回答
写回答
取消 提交回答
  • 步骤1:将对象从 From 复制到 to 空间,同时将新对象的转移指针指向新对象自己。 步骤2:将旧对象的转移指针通过 CAS 的方式指向新对象。 步骤3:将堆中其他指向旧对象的引用,更新为新对象的地址,如果在这个过程中有应用线程访问到了旧对象,则会通过读屏障的方式将新对象的地址返回给新的应用。 步骤4:所有的引用被更新,旧对象所在的分区可以被回收。

    2022-05-09 22:39:10
    赞同 展开评论 打赏
来源圈子
更多
收录在圈子:
+ 订阅
问答排行榜
最热
最新

相关电子书

更多
数据+算法定义新世界 立即下载
袋鼠云基于实时计算的反黄牛算法 立即下载
Alink:基于Apache Flink的算法平台 立即下载