java虚拟机(三)空间分配担保

在发生minorGC(对新生代垃圾回收),如果老年代最大可用的连续空间大于新生代所有对象的总空间,那么Minor GC就是安全的。

新生代使用复制收集算法,会使用一个survivor空间作为轮换备份。但是如果出现,minor gc 后仍然有很多对象存活,且大于survivor的空间,那么就把无法容纳的放进老年代。放进的同时要做分配担保,就是老年代本身还有容纳这些对象的剩余空间。

但是会有多少对象存活下来是不知道的,只能根据以往的经验来判断,是否够了。不够就爆出失败,失败后发起一次full gc(老年代垃圾回收)。

猜你喜欢

转载自blog.csdn.net/xu505928168/article/details/91956896
今日推荐