jvm-内存回收与分配

JVM内存回收与分配策略

  • 对象优先在Eden区分配

  • 大对象直接进入老年代:

    所谓大对象就是需要大量连续的内存空间的java对象
    长期存活的对象将进入老年代:每发生一次GC,存活的对象的年+1,当对象的年龄增加到一定程度(默认15)就会进入老年代

  • 动态对象年龄判断

    如果在Survivor空间中相同年龄所有对象大小的总和大于Survivor空间的一半,年龄大于等于该年龄的对象就可以直接进入老年代

  • 空间分担担保

    在发生GC之前,jvm先会检查老年代最大可用的连续内存空间是否大于新生代所有对象总空间。