> 文档中心 > JVM听课随记05 GC 垃圾回收 终极武器

JVM听课随记05 GC 垃圾回收 终极武器


5.1 GC垃圾收集机制

对于垃圾回收机制,我们需要记住下边这几点:

1. 次数频繁收集Young区

2.次数较少收集Old区

3.基本不动元空间

在这里插入图片描述

在这里插入图片描述

JVM在进行GC时,并非每次都对三个内存区域一起回收的,大部分时候回收的都是指新生代

因此GC按照回收的区域又分为了两种类型,一种为普通GC(minor GC ),一种为全局GC(major GC or Full GC)

这两种GC的区别:

(1) 普通GC(minor GC):只针对新生代区域的GC,指发生在新生代的垃圾收集动作,因为java对象的存活率不高,所以Minor GC的非常不频繁,一般回收速度也比较快。

(2)全局GC(major GC or Full GC):指发生在老年代的垃圾回收动作,出现了Major GC,经常至少伴随一次的Major GC (但并不是绝对的)。Full GC 一般比Minor GC慢上10倍以上。

5.2 GC日志信息

通过上面oom的案例,是不是觉得日志有些看不懂,没关系,通过下边的图你就知道如何阅读GC的日志信息。

(1) YGC的相关参数

在这里插入图片描述

 (2) FGC的相关参数

在这里插入图片描述

 5.3 GC的四大算法

1.复制算法

2.标记清除

3.标记压缩

4.分代收集算法