空间分配担保机制
是什么:在发生Minor GC之前,虚拟机会检查老年代最大可用的连续空间是否大于新生代所有对象的总空间
老年代最大可用的连续空间 > Minor GC之前所有对象 => 进行Minor GC
老年代最大可用的连续空间 < Minor GC之前所有对象 => 检查老年代最大可用连续空间是否大于历次晋升到老年代的对象的平均大小 => 若大于则尝试进行一次Minor GC(有风险)=> 若不够进行FullGC
若小于 => FullGC
是什么:在发生Minor GC之前,虚拟机会检查老年代最大可用的连续空间是否大于新生代所有对象的总空间
老年代最大可用的连续空间 > Minor GC之前所有对象 => 进行Minor GC
老年代最大可用的连续空间 < Minor GC之前所有对象 => 检查老年代最大可用连续空间是否大于历次晋升到老年代的对象的平均大小 => 若大于则尝试进行一次Minor GC(有风险)=> 若不够进行FullGC
若小于 => FullGC