这里就不讲火车算法的原理了。
火车算法是g1收集器使用的gc算法
D,E,C是需要相互调用的三个对象。除此之外没有其他引用。但是当算法执行扫描第一块内存时时,D有E的引用,E有c的引用,c有D的引用。D和E都会保留下来。当第二次扫描时,C也有D的引用而被保留下来.这样岂不是根本没回收到垃圾
这里就不讲火车算法的原理了。
火车算法是g1收集器使用的gc算法
D,E,C是需要相互调用的三个对象。除此之外没有其他引用。但是当算法执行扫描第一块内存时时,D有E的引用,E有c的引用,c有D的引用。D和E都会保留下来。当第二次扫描时,C也有D的引用而被保留下来.这样岂不是根本没回收到垃圾
15 回答8.4k 阅读
8 回答6.2k 阅读
1 回答4.1k 阅读✓ 已解决
3 回答2.2k 阅读✓ 已解决
2 回答3.1k 阅读
2 回答3.8k 阅读
3 回答1.7k 阅读✓ 已解决
可以参考下 渐进式地垃圾回收: 火车算法 中的内容