Java jcmd-jcmd VM.flags的最后一列的含义-全部`

Java jcmd-jcmd VM.flags的最后一列的含义-全部`,java,jvm,jdk-tools,jcmd,Java,Jvm,Jdk Tools,Jcmd,运行以下命令列出所有可用的jvm标志: jcmd 24468 VM.flags -all | less -N 然后在最后一列中,找到以下值(在linux上使用JDK1.8): 问题是: 我只知道一些值的含义,我已经给出了解释,其他值的含义是什么?标志的类型取决于热点源代码中声明/定义标志的位置。大多数标志都是在中声明的 pd_product标志也在globals.hpp中声明,但在一个平台相关文件中定义: C1产品和C2产品标志分别特定于C1(客户端)和C2(服务器)编译器。它们在

运行以下命令列出所有可用的jvm标志:

jcmd 24468 VM.flags -all | less -N
然后在最后一列中,找到以下值(在linux上使用JDK1.8):

问题是:


我只知道一些值的含义,我已经给出了解释,其他值的含义是什么?

标志的类型取决于热点源代码中声明/定义标志的位置。大多数标志都是在中声明的

  • pd_product
    标志也在globals.hpp中声明,但在一个平台相关文件中定义:
  • C1产品
    C2产品
    标志分别特定于C1(客户端)和C2(服务器)编译器。它们在文件中声明
  • C1-pd-product
    C2-pd-product
    是平台特定目录(os、cpu、os\U cpu)中定义的C1/C2标志
  • 产品rw
    标志类似于
    可管理的
    ,但仅供内部使用,可能会在未来的JVM版本中更改。还可以通过JMX在运行时修改这些标志
  • lp64\u产品
    标志仅存在于64位JVM中。在32位JVM中,它们是编译时常量
  • ARCH-product
    标志只存在于特定的体系结构上,而不像
    pd_-product
    那样到处都存在,但默认值不同。特定于体系结构的标志在中声明和定义
  • commercial
    标志需要
    -XX:+解锁CommercialFeatures
    选项
还有

  • 诊断
    供JVM开发人员使用的标志。
    它们通过
    -XX:+UnlockDiagnosticVMOptions
    解锁
  • 试验性
    未完全测试/支持的功能的标志。
    它们通过
    -XX:+UnlockExperimentalVMOptions
    解锁

我认为
jcmd
主题对于单独的标签来说太窄了。像
jdk工具
这样的普通工具更适合。
* product
    default value is the same on all platform,
* pd product
    default value is platform-dependent,
* manageable
    could change dymanically in runtime,
* 
* C1 product
* C2 product
* 
* C1 pd product
* C2 pd product
* 
* product rw
* 
* lp64_product
* ARCH product
* 
* commercial
*