-XX:+CMSParallelRemarkEnabled fgc在标记对象前是要做“暂停”的,这个“暂停”会让jvm停止处理应用程序.串行收集时,只有一次长时间的stop-the-word,而并行收集变成了两次短暂的stop-the-world.并行收集的效率更高,对应用停止的时间更短,但一次full gc还是一次啊,为什么jstat的fgc会增加2?原因在于sun的jvm中fgc计数器是用stop-the-world来计数,jstat取的fgc就是这个fgc计数器的值,所以一次full,而fgc的值却+2。

本文详细解析了JVM中FGC计数器的工作原理及sun jvm中fgc计数器如何在并行收集过程中记录暂停时间,解释了一次全GC操作与fgc计数器值增加的原因。
1万+

被折叠的 条评论
为什么被折叠?



