系列三、GC垃圾回收算法和垃圾收集器的关系?分别是什么请你谈谈

一、关系

GC算法(引用计数法、复制算法、标记清除算法、标记整理算法)是方法论,垃圾收集器是算法的落地实现。

二、4种主要垃圾收集器 

系列三、GC垃圾回收算法和垃圾收集器的关系?分别是什么请你谈谈_第1张图片

4.1、串行垃圾收集器(Serial)

它为单线程环境设计,并且只使用一个线程进行垃圾回收,会暂停所有的用户线程,所以不适合服务器环境。

4.2、并行垃圾收集器(Parallel)

多个垃圾回收线程并行执行,此时用户线程是暂停的,适用于科学计算/大数据处理等弱交互场景。

4.3、并发垃圾收集器(CMS)

用户线程和垃圾收集线程同时执行(不一定是并行,可能交替执行),不需要停顿用户线程,互联网公司多用它,适用于对响应时间有要求的场景。

4.4、G1垃圾收集器

G1垃圾收集器,将堆内存分割成不同的区域,然后并发的对其进行垃圾回收。

三、垃圾收集器如何选择

目前为止还没有完美的垃圾收集算法出现,更没有万能的垃圾收集器,只有针对具体应用选择最合适的收集器,进行分代收集,才能最大限度的提升效率。

你可能感兴趣的:(GC面试系列,GC)