1、引用计数收集器,通过计数器记录对象是否被引用,当计数器为零时,说明此对象已经不再被使用于可进行回收。

2、跟踪收集器

1)复制:复制采用的方式为从根集合扫描出存活的对象,并将找到存活对象复制到一块新的完全未使用的空间中。

2)标记-清除:从根集合开始扫描,对存活的对像进行标记,然后再清除未标记对象。 容易造成内存碎片。

3)标记-压缩:原理与标记-清除基本一致,只是在清除的时候把存活的对象向左移。

 

在堆中采取的回收策略:

在新生代中使用复制算法,前提是认为在新生代中存活的对象时间不长。

1)串行GC(Serial GC)

2)并行回收(Paralel Scavenge)

3)并行GC(ParNew) 

在旧生代中使用标记-压缩:前提是认为在旧生代中存活的对象时间长。

1)串行GC(Serial MSC)

2)并行GC(Parallel MSC)

3)并发GC(CMS) 

posted on 2010-07-31 10:28  ALVINZ  阅读(143)  评论(0)    收藏  举报