Minor GC、Major GC 和 Full GC 是 Java 虚拟机 (JVM) 垃圾回收 (Garbage Collection) 中的不同类型的 GC 事件,它们在范围、触发条件、停顿时间等方面有所不同。
1. Minor GC (Young GC):
- 范围: 只针对新生代 (Young Generation) 进行垃圾回收。
- 触发条件:
- Eden 区空间不足。
- 新创建的对象无法在 Eden 区分配内存。
- 算法: 通常采用复制算法 (Copying)。
- 将 Eden 区和 From Survivor 区中存活的对象复制到 To Survivor 区。
- 清理 Eden 区和 From Survivor 区。
- 交换 From Survivor 区和 To Survivor 区的角色。
- 特点:
- 频率高: 由于大多数对象都是“朝生夕死”的,Minor GC 通常非常频繁。
- 停顿时间短: 由于新生代空间相对较小,且复制算法效率较高,Minor GC 的停顿时间通常较短。
- Stop-The-World (STW): Minor GC 也会导致 Stop-The-World,即暂停所有应用线程。
- 对象晋升:
- 在 Minor GC 过程中,存活下来的对象会被复制到 Survivor 区。
- 对象的年龄会增加(经历一次 Minor GC
1万+



被折叠的 条评论
为什么被折叠?



