与多线程同理,并行和并发在垃圾收集器可以做出如下解释:
并行(Parallel)
指多条垃圾收集线程并行工作,多个CPU同时执行垃圾回收,此时用户线程仍处于等待状态,此工作方式的垃圾收集器有:ParNew,Parallel,Scavenge,
Parallel Old
串行(Serial)
单线程执行,同一时间段只允许有一个CPU用于执行垃圾回收操作,此时工作线程被暂停,直至垃圾收集工作结束
并发(Concurrent)
指同一时间段内,用户线程与垃圾收集线程同时执行,但是我们说过,程序触发GC时,会同时触发STW,所以还是会出现只有垃圾回收线程单独执行的情况,比如:CMS和G1垃圾收集器