JVM-052-垃圾回收器-ParNew回收器(并行回收)

引入

  • 如果说Serial GC是年轻代中的单线程垃圾收集器,那么ParNew收集器则是Serial收集器的多线程版本。
    • Par意思是Parallel的缩写,New:意思是只能处理新生代
  • ParNew 收集器除了采用并行回收的方式执行内存回收外,两款垃圾收集器之间几乎没有任何区别。ParNew收集器在年轻代中同样也是采用复制算法、”Stop-the-World”机制
  • ParNew 是很多JVM运行在Server模式下新生代的默认垃圾收集器
阅读更多

JVM-049-垃圾回收器-评估GC的性能指标

指标

  1. 吞吐量:运行用户代码的时间占总运行时间的比例。

    • (总运行时间 = 程序的运行时间 + 内存回收的时间)
  2. 垃圾收集开销:吞吐量的补数,垃圾收集所用时间与总运行时间的比例。

  3. 暂停时间:执行垃圾收集时,程序的工作线程被暂停的时间。

  4. 收集频率:相对于应用程序的执行,收集操作发生的频率。

  5. 内存占用:Java堆区所占的内存大小。

  6. 快速:一个对象从诞生到被回收所经历的时间。

阅读更多

JVM-048-垃圾回收器-概述与分类

垃圾回收器概述

  • 垃圾收集器没有在规范中进行过多的规定,可以由不同的厂商、不同版本的JVM来实现。

  • 由于JDK的版本处于高速迭代过程中,因此Java发展至今已经衍生了众多的GC版本。

  • 从不同角度分析垃圾收集器,可以将GC分为不同的类型。

阅读更多