首页 > 代码库 > 并行垃圾收集器

并行垃圾收集器

—XX:+UseParallelGC

使用该选项,minor gc和major gc都会使用并行垃圾收集器

主机内核N小于等于8时,并行垃圾收集器使用的线程等于N

N>8时,某个系数乘以N得到收集器使用的线程

—XX:ParallelGCThreads= 指定线程数,并行垃圾收集器使用多个线程进行minor gc时,会导致老年代的碎片问题,应为不同的线程需要开辟不同的老年代区域,从而将足够老的对象移入老年代。减少线程数,增大老年代可以,减少碎片化。

 

—XX:MaxGCPauseMillis= 可以指定暂停时间,虚拟机会做一系列调整,从而尽量满足该条件,可能会导致吞吐量下降

 

—XX:GCTimeRatio= 工作时间和gc时间的比值

 

—Xmx指定堆的大小

 

堆大小调整时,默认情况下,每次增加是20%,减少是5%。可以分别用参数指定:

增长:

—XX:YongGenerationSizeIncrement=

—XX:TenuredGenerationSizeIncrement=

减少:

-XX:AdaptiveSizeDecrementScaleFactor=<D>

弱增长为x,则减少等于 x/D

 

—Xms最小内存

—Xmx最大内存

 

如果超过98%的时间用来收集垃圾,同时少于2%的内存被回收,那么就会报出outofmemory的错误

 

并行垃圾收集器