jvm垃圾回收
2020-09-23 10:09:45 0 举报
AI智能生成
初学jvm
作者其他创作
大纲/内容
jvm内存分代模型
运行时数据区(内存模型)
线程共享
堆
方法区(元空间,也叫永久代)
线程私有
栈(线程)
本地方法栈
程序计数器
类装载系统
类加载器(双亲委派机制_向上委托,从上往下顺序加载)
引导类加载器
扩展类加载器
应用类加载器
自定义类加载器
执行引擎
jvm垃圾回收
找寻垃圾算法
引用计数法
可达性分析法
垃圾回收算法
标记-清除(Mark Sweep)
位置不连续,产生碎片
复制算法(copying)
没有碎片,浪费空间
标记-整理(mark compact)
没有碎片,效率偏低
垃圾收集器
不超过JDK8(分代垃圾回收机制)
-XX:UseSerialGC)
serial(年轻代)_复制算法_STW_单线程
serial old(老年代)_标记-整理算法_STW_单线程
-XX:UseParallelGC/-XX:UseParallelOldGC
parallel Scavenge(年轻代)_复制算法_STW_多线程
parallel old(老年代)_标记-整理算法_STW_多线程
-XX:UseConcMarkSweepGC
parNew(年轻代)(基于parallel Scavenge升级)_复制算法_STW_多线程
CMS(老年代)_标记-清除算法(初始标记(短暂STW)-并发标记-重新标记(短暂STW)-并发清理)+serial Old(备用)
JDK8以上(分区垃圾回收机制)
G1(jdk9默认使用)
ZGC(jdk11实验阶段)
Shenandoah(jdk11实验阶段,G1增强版,redhat开发)
其他
epsilon(jvm做调试使用,没有回收垃圾作用)
jvm调优工具
JDK自带Jstat、Jinfo、Jhat及Jstack
Jvisualvm、Jconsole
阿里巴巴JVM调优工具Arthas
GC日志分析
GCEasy日志分析工具
子主题
GCViewer日志分析工具
子主题
0 条评论
下一页