内存分配和回收策略

1、对象的内存分配往大的方向说就是在java堆上分配,对象主要分配在新生代的Eden区上,如果启动了本地线程分配缓冲,将按照线程优先分配在tlab上分配。少数情况下可能直接分配在老年代中,其细节取决于哪一种垃圾收集器组合,还有虚拟机中和内存相关的参数设置。其他几种内存分配方法是2、对象优先分配在Eden区,大多数情况下新生代分配在eden去,如果区没有足够的内存空间,虚拟机将发起GC;3、大对象直接进入老年代,所谓大对象就是大量连续内存空间的java对象,那种很长得字符串以及数组。4、长期存活的对象将进入老年代(新老年代的区分标准,虚拟机给每个对象定义了一个对象age计数器,如果对象在Eden区出生并经过第一次GC后仍然存活,并且被survivor容纳的话,将被移动到survivor空间中,并且对象年龄设为1,对象在survivor去每熬过一次GC,年龄加1,默认15,就将升级到老年代)。5、动态对象年龄判定
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值