gpt4 book ai didi

java - 有没有办法显示正在运行的 JVM 中使用的标志?

转载 作者:搜寻专家 更新时间:2023-11-01 02:28:49 25 4
gpt4 key购买 nike

虽然我们已经为我们的应用程序明确设置了一些 JVM 标志,但很难知道是否:1. boolean 标志默认已经打开(默认值在次要 JDK/JRE 更新之间更改)2. 一面旗帜否定另一面旗帜3.给定任意标志的默认值在您的特定系统上是什么(由 Java ergonomics 设置)

总结一下:有没有类似于

的命令行工具
java -XX:+PrintFlagsFinal

,我可以在哪里检查已运行的 JVM 的所有标志值?

最佳答案

对于 HotSpot,您可以使用(来自 ehcache)

private static String getHotSpotVmOptionValue(String name) {
try {
MBeanServer server = ManagementFactory.getPlatformMBeanServer();
ObjectName beanName = ObjectName.getInstance("com.sun.management:type=HotSpotDiagnostic");
Object vmOption = server.invoke(beanName, "getVMOption", new Object[] {name}, new String[] {"java.lang.String"});
return (String)((CompositeData)vmOption).get("value");
} catch (Throwable t) {
return null;
}
}

关于java - 有没有办法显示正在运行的 JVM 中使用的标志?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14646660/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com