参考地址:https://blog.csdn.net/qq_22152261/article/details/79491536
这个分区是在第一次分区的基础上,将新生代分为三部分,分别是伊甸园、幸存区S0,幸存区S1,伊甸园内存占比为8:1:1,S0与S1大小相同。对象的一生如下:
①所有对象都在伊甸园出生,当伊甸园占满时,开始进行一次Minor GC,此次GC会将已存活的对象复制到S0区中
②伊甸园区又被占满,此时又进行一次Minor GC,伊甸园存活的对象又复制到S0区。
③在若干次GC后,幸存区S0也满了,此时Minor GC会对伊甸园和幸存区S0的
做一次垃圾回收,将两个区存活的对象复制到幸存区S1中,再把伊甸园和S0清空,最后把S1的内存与S0交换,此时S1又腾空了,S0剩下一些老对象。
④又经历若干次GC,幸存区S0已经放满了经历过N次GC都回收不了的老对象,此时会将老对象复制到老年代中,腾空幸存区。
⑤并非当幸存区被老对象占满才复制到老年代中,当老对象年龄达到15岁,即经历过15次GC都还活着的,也会复制到老年代中,另外伊甸园中如果诞生了一个比幸存区还大的对象,那么该对象回收不了时,也会直接送入到老年代中。
⑥又经历过若干次GC后,老年代也满了,那么此时它会进行一次Major GC。
2020-08-28
最新推荐文章于 2023-09-12 15:23:35 发布