赞
踩
1、先标记需要回收的对象
2、标记完成后统一回收标记的对象
一方面,标记清除效率不高
另一方面,因为对象的大小的随机性,而产生大量不连续的小的不可用内存空间(内存碎片),
从而导致大对象的创建容易产生内存空间不足而提前触发 GC
1、把可用内存空间一分为二,每次使用其中一块
2、用完时,复制所有存活的对象到新的内存空间,然后回收旧的内存空间
一方面,内存利用率低下
另一方面,对象少的时候,效率很高,存活对象多时复制的效率就很低了
1、标记所有需要回收的对象
2、把所有的存活对象向一端移动
3、回收存活对象之外的内存空间
解决了复制算法在多对象环境下的效率问题
解决了内存碎片问题
1、根据对象生存周期的不同,划分内存块
2、对不同的块使用不同的算法
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。