Hotspot虚拟机操作列表及其描述

3

Java Hotspot虚拟机可以执行多种不同的虚拟机操作。在调试安全点时间时,了解安全点的目的非常有用。其中一些显而易见:G1IncCollectionPauseFindDeadlocks,但有些则不是:CGC_Operationno 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

@Holger 谢谢,但这是有点不同的事情。我需要“操作”,而不是“选项”。 - Imaskar
当选项的文档,包括生成输出的选项,没有导致输出文档的情况下,恐怕就没有文档了。 - Holger
1个回答

3

最好(可能是唯一的)文档就是源代码。幸运的是,HotSpot JVM的源代码被很好地注释了。

请参见src/share/vm/gc_implementation/g1/vm_operations_g1.hpp

// Concurrent GC stop-the-world operations such as remark and cleanup;
// consider sharing these with CMS's counterparts.
class VM_CGC_Operation: public VM_Operation {

no vm operation 表示各种清理活动的特殊周期性安全点类型,请参见此答案


谢谢,那应该可以了。我尝试过在网上搜索,但没有成功。也许在 Skara 之后会更好。 - Imaskar

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接