本文重点
从本文开始我们将开启垃圾回收器的介绍了,我们知道垃圾回收算法是逻辑改变,而垃圾回收器是具体的实现。我们前面介绍的垃圾回收器有7个,本文将在添加三个,但是这三个目前来看不是很常用,我们只了解一下,我们主要还是讲解这7个垃圾回收器。
十个垃圾回收器
目前为止有10个回收器帮助我们垃圾回收。其中专门为新生代服务的有三个,为老年代服务的有三个,即为新生代又为老年代服务的有3个。
Epsilon、ZGC、Shenandoah在物理和逻辑上都不分新生代和老年代,就是一块内存,分配对象在内存上,然后在内存上清除。
G1是逻辑分代,物理上不分代,分成一块一块的结构,只是在逻辑上分为新生代和老年代
除此之外的垃圾回收器,不仅逻辑分代,而且物理分代,物理和逻辑上都分为新生代和老年代
垃圾回收器的组合
如上所示,G1、ZGC、Shenandoah我们可以认为它们自己单打独斗就可以了,也就是说无论是新生代还是老年代,它们一个垃圾回收器就搞定了,而前面的六个不行,需要进行组合使用,也就是说新生代用一个,老年代然后用一个。
如上所示,连线的地方就是可以使用的组合,画