GC
关于JVM堆区的划分,请转至JVM垃圾回收机制 查看,感谢。
GC:
- 1、Minor GC:在年轻代(Eden和Survivor)中执行的GC
- 2、Major GC:在老年代(Tenured)中执行的GC
- 3、Full GC:清理整个堆空间包括年轻代和老年代
1.垃圾回收机制过程
2.什么时候发生minor GC和Full GC?
3.为什么要进行minor GC?
4.初始化的对象会被放在什么地方呢?
对象的内存分配策略
- 两个存储位置:本地线程缓存TLAB和堆区;
-
新对象产生时首先检查本地线程是否开启了缓存,是则存储在TLAB,否则去堆中寻找位置。
-
堆区:Eden、两个Survivor、Tenured共4个区。
-
Eden与Survivor大小比是8:1,Eden和Survivor称为新生代,Tenured称为老年代(JDK8已经没有持久代了)
-
可通过-Xmn参数来调整新生代大小,也可通过-XX:SurvivorRadio来调整Eden Space和Survivor Space大小。
-
新生代GC和老年代GC
- 新生代G