JVM-----对象的分配

1、大多数情况下,对象在新生代eden区中分配,当eden区中没有足够内存空间进行分配时,虚拟机将发起一次minor GC(minor gc:发生在新生代的垃圾收集动作,非常频繁,一般回收速度也比较快)。

2、大对象直接进入老年代。

3、长期存活的对象进入老年代。

4、若在survivor空间中相同年龄的所有对象的总和>survivor空间的一半,则年龄>=该年龄的对象直接进入老年代,无须等到MaxTeuringThreshold(默认为15)中的要求。

 注:虚拟机给每一个对象定义一个对象年龄计数器,若对象在eden出生并经过第一次minor gc后仍然存活,并且能被survivor容纳的话,将被移到survivor空间中,并且对象年龄设为1,对象在survivor中每熬过一次minor gc,年龄就+1,当它年龄达到一定程度(默认是15)就会晋升到老年代。



猜你喜欢

转载自blog.csdn.net/g1607058603/article/details/80521098
今日推荐