标记清除算法是GC算法之一,也是GC算法中的基础算法。
标记清除算法通过两步骤进行GC:
- 标记(通过可达性分析算法找出可回收对象,并标记)
- 标记完成后统一清除
如图(图片来自网络):
缺点:
- 标记和清除两步骤效率低
- 通过标记清楚后,内存中存在大量不连续的内存空间碎片,碎片数量太多后会导致在运行期间存放某个对象需要一块很大内存时无法为其分配空间,从而导致再次出发GC操作
内存分配策略之标记清除算法
原文:https://www.cnblogs.com/shiguotao-com/p/10537325.html