Mark–Scavenge:垃圾自行清理的等待 – Inside.java
本文介绍了一种名为Mark-Scavenge的垃圾回收算法。该算法发现,在移动式垃圾回收器中,使用可达性作为活跃度的代理会导致不必要的数据移动。文章指出,传统的垃圾回收算法通常将可达性等同于活跃度,但这会导致已不再使用的对象被移动,造成浪费。Mark-Scavenge算法通过延迟对象迁移到下一个垃圾回收周期,增加了对象在此期间变为不可达的可能性,从而减少了不必要的移动。实验结果表明,Mark-Scavenge算法能够显著减少无效工作,并在高负载机器上带来明显的性能提升。
阅读更多