2垃圾回收算法(标记清除算法复制算法标记整理算法和分代收集算法),各种垃圾收集器讲解(学习笔记)

Posted to.to

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了2垃圾回收算法(标记清除算法复制算法标记整理算法和分代收集算法),各种垃圾收集器讲解(学习笔记)相关的知识,希望对你有一定的参考价值。

2.垃圾回收概述
2.1.垃圾回收算法
2.1.1.垃圾回收算法-标记清除算法
2.1.2.垃圾回收算法–复制算法
2.1.3.垃圾回收算法–标记整理算法和分代收集算法
2.1.4.垃圾回收算法–Serial收集器详解
2.1.5.垃圾回收算法–Parnew收集器详解
2.1.6.垃圾回收算法–Parallel收集器详解
2.1.7.垃圾回收算法–CMS收集器详解
2.1.8.最牛的垃圾回收集器–g1收集器详解

2.垃圾回收概述

对象什么时候才能变成垃圾。

如何判定对象为垃圾对象。

关于垃圾回收的三个问题:
在这里插入图片描述
分代收集算法。

2.1.垃圾回收算法

2.1.1.垃圾回收算法-标记清除算法

问题:效率问题

2.1.2.垃圾回收算法–复制算法

在这里插入图片描述
新生代里面的三个区域的用途。

内存占比:
在这里插入图片描述
复制算法主要针对新生代的算法。针对老年代,效率很低。

2.1.3.垃圾回收算法–标记整理算法和分代收集算法

主要针对老年代的。
针对:频率不高,很少的情况。
在这里插入图片描述
让回收的,往右。
分代收集算法:根据新生代和老年代采用不同的算法。

2.1.4.垃圾回收算法–Serial收集器详解

在这里插入图片描述
在这里插入图片描述

2.1.5.垃圾回收算法–Parnew收集器详解

在这里插入图片描述
多个线程去收集垃圾

2.1.6.垃圾回收算法–Parallel收集器详解

在这里插入图片描述
上图中的下面两个参数为了”控制吞吐量”。
都是多线程收集器
在这里插入图片描述为了降低中间的那段时间。
吞吐量:CPU用于运行用户代码的时间与CPU消耗的总时间壁纸。
在这里插入图片描述

2.1.7.垃圾回收算法–CMS收集器详解

在这里插入图片描述
标记清除算法
内存碎片。
性能非常低。

老年代收集器。
CMS是一个并发收集器
CMS的关注点也主要是

工作过程是:
在这里插入图片描述

初始标记:
引用计数法。
可达性分析法。

缺点:
1、占用大量的CPU资源

2.1.8.最牛的垃圾回收集器–g1收集器详解

优势:
1、并行与并发
2、分代收集
3、空间整合
4、可预测的停顿
在这里插入图片描述
步骤:
1、初始标记(并行的)
2、并发标记
3、最终标记
4、筛选回收

查找什么是Remember set

通过一张表的方式。

以上是关于2垃圾回收算法(标记清除算法复制算法标记整理算法和分代收集算法),各种垃圾收集器讲解(学习笔记)的主要内容,如果未能解决你的问题,请参考以下文章

Java 虚拟机原理垃圾回收算法 ( 标记-清除算法 | 复制算法 | 标记-整理算法 )

JVM-垃圾回收算法

JVM都有哪些垃圾回收算法?

JVM垃圾收集算法(标记-清除复制标记-整理)

JVM垃圾回收算法

java 垃圾回收算法和垃圾收集器