Java对象的分配过程

  1. 首先尝试在栈上分配,如果分配不下,进入堆内存。
  2. 进入堆内存之后,如果对象大小超过年轻代大小,则会直接进入Old区。
  3. 如果小于,则会尝试在线程TLAB区分配,如果分配不下,进入Eden区。
  4. 进入Eden区之后,经过一次YGC之后,活着的对象进入Survior0区。
  5. 再次YGC,Eden +Survior0区活着的对象进入Survior1区。
  6. 再次YGC,Eden +Survior1区活着的对象进入Survior0区。
  7. 对象年龄足够(Parallel Scavenge —>15 ,CMS—>5,G1——>15),进入Old区。
上一篇:JVM调优总结(五)-分代垃圾回收详述1


下一篇:叫练手把手教你读JVM之GC信息