垃圾回收器、垃圾回收算法、深入理解JVM
2021-01-28 20:01:22 0 举报
垃圾回收器、垃圾回收算法、深入理解JVM
作者其他创作
大纲/内容
object6
SafePoint
GC线程3
Concurrent Mark
Copy
reference1
Init Mark
Concurrent Partial
用户线程3
GC线程2
用户线程0
类静态变量或常量
object7
用户线程1
object5
根节点
G1
Finish Mark
reference3
用户线程2
重置线程
线程共享
ParNew/Serial Old收集器运行示意图
保留区域
并发标记
Mark
回收后
GC Roots Set
空闲空间
初始标记
重新标记
GC线程4
老年代采用标记-整理算法暂停所有用户线程
存活对象
垃圾对象
object4
新生代采用复制算法暂停所有用户线程
栈帧的局部变量表
Serial
筛选回收
GC线程
仍然存活的对象
Compact
reference2
Survivor区
object2
Tenured generation
Serial Old
未分配区域
CUP 0CUP 1CUP 2CUP 3
Parallel Scavenge
引用关系
最终标记
本地方法栈
Parallel Old
Parallel Scavenge/Parallel Old收集器运行示意图
Old GC
object3
Young GC
Young generation
G1:
方法区
JNI
程序计数器
JDK9
GC线程1
Eden区
Serial/Serial Old收集器运行示意图
Concurrent Compact
CMS:
object1
可回收的对象
Concurrent Sweep
GCRoots
并发清理
CMS
线程私有
Serial,Parallel:
Java堆
Shenandoah,ZGC:
G1收集器运行示意图
ParNew
GC Roots
Concurrent Mark Sweep收集器运行示意图
虚拟机栈
老年代
0 条评论
下一页