除了我们学习的分代收集算法:标记-清除算法、标记-复制算法、标记-整理算法,我们现在再拓展两种算法。
个人观点:算法的演进是逐渐改变前人算法的缺点,但是在改变缺点的同时也会产生新的缺点。世界上没用完美的算法,只有适合的算法。
一、增量收集算法
1、产生背景
我们知道在垃圾回收的时候,会暂停用户线程,如果垃圾回收的时间过长则会严重影响用户体验。那么就出现了对实时垃圾回收算法的研究——增量收集算法。
2、基本思想
让垃圾收集线程和应用程序线程交替执行。每次垃圾收集线程只收集一小片区域的内存空间,接着切换到应用程序线程。依次反复,直到垃圾收集完成。
这里我们可知道,增量收集算法的基础仍是传