对象的空间分配策略

1.对象会优先分配在堆的Eden区上面,如果Eden区的内存不足的话,将会触发一次yuoung gc

2.大对象将直接进入老年代中(指的是那种很长的字符串或者数组),经常出现大对象会导致内存还有不少空间时就提前触发垃圾收集。虚拟机中提供了一个参数用来设置,超过这个设置值的对象就会直接在老年代中分配,这样做避免在eden区与两个survior区中发生大量的复制。

3.长期存活的对象将会直接进入老年代,虚拟机为每个对象定义了一个年龄计数器,当发生第一次young gc的时候,存活的对象会进入survior区,之后每进行一次young gc 年龄加1,达到一定值时,则进入老年代。

4.动态判断对象的年龄。如果survior区中有相同年龄的对象的总和大于survior区内存一半后,这些对象会进入老年代

5.空间分配担保:老年代的连续空间大于新生代对象总大小或历次晋升的平均大小,就会进行young gc 否则,full gc.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值