深入理解 JVM 垃圾回收机制
Java 虚拟机(JVM)的垃圾回收(GC)是内存管理的核心机制。了解 GC 的工作原理对于编写高性能 Java 应用至关重要。
常见的垃圾收集器
Serial GC
- 单线程,适用于客户端模式
- 使用
-XX:+UseSerialGC参数启用
Parallel GC
- 多线程,注重吞吐量
- 使用
-XX:+UseParallelGC参数启用
CMS GC
- 并发标记清除,低延迟
- 使用
-XX:+UseConcMarkSweepGC参数启用
G1 GC
- 将堆分为 Region,可预测停顿时间
- 使用
-XX:+UseG1GC参数启用
GC 日志分析
# 开启 GC 日志
-XX:+PrintGCDetails -Xloggc:/path/to/gc.log
分析 GC 日志可以帮助我们了解内存使用情况和 GC 性能。