JVM基础快速入门篇 (2)

根可达分析算法-将”GC Roots”对象作为起点,从这些节点开始向下搜索引用的对象,找到的对象都标记为非垃圾对象,其余未标记的对象都是垃圾对象。线程栈的本地变量、静态变量、本地方法栈的变量等等都可以称作GC Roots跟节点。如图:

JVM基础快速入门篇

3.常见的垃圾回收算法

复制算法-没有碎片 浪费内存空间(目前使用新生代使用的是复制算法)

标记清除-位置不连续 产生内存碎片

标记压缩-没有碎片 效率偏低

复制算法它将可用内存按容量分为大小相等的两块,每次只使用其中的一块,当这一块的内存用完了,就将还存活的对象复制到另外一块上面,然后再把已使用过的内存空间一次清理掉。

五.常见垃圾回收器

新生代收集器:Serial、ParNew、Parallel Scavenge
老年代收集器:CMS、Serial Old、Parallel Old
整堆收集器: G1

jdk1.8 默认垃圾收集器Parallel Scavenge(新生代)+Parallel Old(老年代)

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/zysdjf.html