Java Hotspot虚拟机可以执行多种不同的虚拟机操作。在调试安全点时间时,了解安全点的目的非常有用。其中一些显而易见:G1IncCollectionPause
或FindDeadlocks
,但有些则不是:CGC_Operation
,no vm operation
。有一个VMOps.java文件,但它仅列出可能的值,而不是它们的含义。
目前,我需要知道在G1GC上下文中CGC_Operation
的作用。我认为它与ConcurrentGCThread和旧代收集相关,但我想确认并查找其他操作的参考资料。
示例:
-XX:+PrintSafepointStatistics
...
128959.961: G1IncCollectionPause [ 2636 0 1 ] [ 0 0 0 15 52 ] 0
129986.695: G1IncCollectionPause [ 2637 0 0 ] [ 0 0 0 12 51 ] 0
137019.250: G1IncCollectionPause [ 2636 0 0 ] [ 0 0 0 13 50 ] 0
138693.219: CGC_Operation [ 2636 0 0 ] [ 0 0 0 13 338 ] 0
138726.672: G1IncCollectionPause [ 2636 0 0 ] [ 0 0 0 13 50 ] 0
138733.984: G1IncCollectionPause [ 2636 0 1 ] [ 0 0 0 13 50 ] 0
138738.750: G1IncCollectionPause [ 2636 0 0 ] [ 0 0 0 13 62 ] 0