full gc minor gc major gc 区别
时间: 2024-06-04 17:08:25 浏览: 155
第6节: GC垃圾回收-02
在Java虚拟机中,垃圾收集器主要分为三种类型:Minor GC(新生代垃圾收集)、Major GC(老年代垃圾收集)和Full GC(整堆垃圾收集)。
1. Minor GC:Minor GC 也称为新生代垃圾收集。它是指对新生代进行垃圾回收的过程。当新生代内存空间使用完毕时,就需要进行垃圾回收。Minor GC 主要回收年轻代,包括Eden区和Survivor区。在 Minor GC 的过程中,对于那些无法被回收的对象,会被直接送到老年代中。
2. Major GC:Major GC 也称为老年代垃圾收集。它主要是对老年代进行垃圾回收,当老年代内存空间不足时,就需要进行垃圾回收。Major GC 的执行频率比 Minor GC 低,对系统性能影响也比较大。被回收的对象可以是从新生代晋升到老年代的对象,也可以是老年代中的对象。
3. Full GC:Full GC 也称为整堆垃圾收集,顾名思义,就是对整个堆空间进行垃圾回收。Full GC 通常是在老年代内存不足时触发。Full GC 的执行会导致应用程序停顿,对系统性能影响最大。
总的来说,Minor GC 主要针对新生代进行垃圾回收,Major GC 主要针对老年代进行垃圾回收,而 Full GC 则是对整个堆空间进行垃圾回收,包括新生代和老年代。不同的垃圾收集器对这些垃圾回收的过程和策略可能会有所不同。
阅读全文