认识JVM串行和并行垃圾回收器
Posted bcbobo21cn
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了认识JVM串行和并行垃圾回收器相关的知识,希望对你有一定的参考价值。
JVM垃圾回收器有多种;先认识一下串行和并行垃圾回收器;
一、串行垃圾回收器
在JDK1.3之前,单线程回收器是唯一的选择。
它进行垃圾回收的时候,必须暂停其它所有的工作线程(Stop The World,STW),直到它收集完成。
它适合Client模式的应用,在单CPU环境下,它效率高效,由于没有线程交互的开销,专心垃圾收集自然可以获得最高的单线程效率。
串行的垃圾收集器有两种,Serial和Serial Old,一般两者搭配使用。
二、并行垃圾回收器
并行垃圾回收器是通过多线程进行垃圾收集的。也会暂停其它所有的工作线程(Stop The World,STW)。
适合Server模式以及多CPU环境。一般会和JDK1.5之后出现的CMS搭配使用。并行的垃圾回收器有以下几种:
ParNew:Serial收集器的多线程版本,
Parallel Scavenge: 关注吞吐量,吞吐量优先,吞吐量=代码运行时间/(代码运行时间+垃圾收集时间),也就是高效率利用CPU时间,
Parllel Old:Parallel Scavenge的老年代版本。JDK 1.6开始提供的。有了Parllel Old之后,通过-XX:+UseParallelOldGC参数使用Parallel Scavenge + Parallel Old器组合进行内存回收。
以上是关于认识JVM串行和并行垃圾回收器的主要内容,如果未能解决你的问题,请参考以下文章