JVM GC

内存分配和回收原则

  1. 首先进入Eden区
  2. 大对象直接进入老年代
  3. 长期存活对象将会进入 老年代
    • -XX:MaxTenuringThreshold 默认晋升阈值为 15岁(大部份收集器),CMS不是,是6
    • -XX:TargetSurvivorRatio=50 所有年龄段加起来超过 survivor 区的50%(默认)就用最高的那个年龄MaxTenuringThreshold比较较小的那个作为新的晋升阈值
  4. GC类型
    1. Young gc: 只对 新生代 GC
    2. Old gc: 只对 老年代 GC
    3. Mixed gc: 对整个 新生代 和 部分 老年代 GC
    4. Full gc/Major gc: 对整个方法区 GC