F_G

许多问题需要说清楚就可以&&走永远比跑来的重要

导航

[Java] 新生代和老年代垃圾回收策略

一、新生代:采用复制策略

Eden块,连个survival块

回收的时候,将Eden和当前使用的survival块当中的存活的对象转移到另一块survival当中,清空Eden和当前使用的survival块。

 

二 、老年代:标记移动算法

由于变化不是很大,而且大部分都是长期活着的对象或者大对象,所以使用新生代中的survival块无法全部容纳。这里使用标记移动的策略。

 

实际上,上面的两种策略对应了两种GC策略,minor GC 和 major GC。从参考[2]中知道,每一个对象都有一个年龄,每熬过一次minor GC,它的年龄加一,当达到了一定的限制,就会转换到老年代。这个阈值默认是15,可以设置。一般major GC都会对应一次minor GC。

 

[1] http://www.admin10000.com/document/1671.html

[2] http://blog.csdn.net/ustcxjt/article/details/7287430

posted on 2015-09-12 14:07  F_G  阅读(1329)  评论(0编辑  收藏  举报