GC垃圾回收器

1:传统回收器

 

 

 1.1:serial

  如上图所示:每当进行GC操作时,就将所有的用户线程停下来,然后运行一个GC线程进行垃圾回收,显然效率慢,延迟高。

 1.2:parallel

  为了改进串行的缺点,使用并行的垃圾回收方法,当进行垃圾回收时,不仅仅开启一个线程用来垃圾回收,而是开启多了线程进行垃圾回收,这样就可以提高回收效率,但是也必须停止所有其他用户线程。

 1.3:CMS

  再度为了优化并行垃圾回收方法,我们在第一次阶段只进行一个线程的mark标记线程,然后恢复用户线程,其中依然保持一个垃圾回收线程,然后在每一个用户线程中进行在再标记,然后垃圾回收线程和用户线程并行进行垃圾回收和用户任务。

 1.4:G1

2:G1垃圾回收器

 

 

 

 2.1:特点

软实时,低延时,可设定目标,参数:MAXGCPauseMills = N,用于设定最大的延时目标。

适合用于较大堆的垃圾回收器,用于替代CMS,在jdk9以后就是默认的GC了。

 2.2:GC Fullly Young

 2.3:GC Old

 2.4:G1

 

posted @ 2020-04-24 09:38  大朱123  阅读(167)  评论(0编辑  收藏  举报