JVM<一> 初识JVM CLASS文件结构_丛林雪狼code的博客-CSDN博客
JVM <二> 运行时区域 Run-Time Data Areas_丛林雪狼code的博客-CSDN博客
JDK1.8 GC默认方式为: PS (Paraller ScaVenge) + PO(Parller Old);
内容参考:【java进阶JVM】GC算法 垃圾处理器_weixin_34390105的博客-CSDN博客
感谢大神;
垃圾处理器:顾名思义是收集垃圾的,用以将无用的垃圾进行回收机释放内存;
垃圾识别的方式有两种算法:
引用计数:用一次记一次 ,不用就减掉1次;存在的缺点:回收过的内存碎片化,不连续;
可达性分析:Gc Roots,从根上去寻找是否有关联性的对象,若有就不是垃圾;没有任何的引用链了,则会被视为垃圾;
GC 回收算法:
1)mark-sweep 标记清除法
特点:标记一块,清除一块;
缺点:内存不连续
2)coping 复制法
特点:内存半化,只用一块内存进行复制来复制(仍旧存活的对象)去;
缺点:资源浪费(闲置内存)
3)mark-compact 标记压缩法
特点:先标记 再移至一块 最后一次清理
缺点:效率慢
4) 分代收集法
特点:新生代采用 Coping 老年代用mark-compact 或 mark-sweep
常见的垃圾处理器: