Java堆分区
1.新生代:
新生代中分为Eden,ServicorTo,ServicorFrom区
Eden俗称伊甸区,顾名思义,就是新对象首次存在的区域
之后,对象会转到servicorTo或者servicorFrom区,这两个区空间大小一致,作用主要是GC复制算法会用到。
2.老年代:新生代的对象存活了一定的年龄(一般是15岁),会放到老年代区。
举个形象的例子:假如有100人出生在Eden区,这100人慢慢长大,赚钱发家致富,进入到S0区,GC在区域空间逐渐满的时候会不定期的来调查每个人的价值,于是,把60个有价值的人克隆送到了S1区,S0区的所有生命都干掉,就这样过了一断时间,GC又来S1区调查60个人的价值,发现只有20人有价值,于是又复制到了S0区,S1区的所有都干掉,就这样,周而复始,在这周而复始的期间,有的一直存活,活到了15岁,于是把它放到了老年代区域。
-----后续更新细化