在运行时更改JVM JIT选项
是否可以在运行时更改Java JVM(JIT)的选项和/或模式?例如,更改XX:CompileThreshold,甚至在解释代码和编译代码之间切换(在运行时更改JVM JIT选项,jvm,java,jvm-hotspot,Jvm,Java,Jvm Hotspot,是否可以在运行时更改Java JVM(JIT)的选项和/或模式?例如,更改XX:CompileThreshold,甚至在解释代码和编译代码之间切换(-Xcompvs-Xint) 我的JVM来自OpenJDK(1.6)、Hotspot或Zero/Shark,您可以通过更改其中的一些设置 但是,它们中的大多数是只读的。您无法在运行时更改JVM模式,但是您可以在不重新启动JVM的情况下修改某些标志。只需使用JMX客户端(如VisualVM)连接到JVM,并使用com.sun.management:ty
-Xcomp
vs-Xint
)
我的JVM来自OpenJDK(1.6)、Hotspot或Zero/Shark,您可以通过更改其中的一些设置
但是,它们中的大多数是只读的。您无法在运行时更改JVM模式,但是您可以在不重新启动JVM的情况下修改某些标志。只需使用JMX客户端(如VisualVM)连接到JVM,并使用
com.sun.management:type=hospotdiagnostic
的操作setVMOption
例如,如果希望在不重新启动JVM的情况下启用详细的GC日志记录,请调用方法setVMOptions(“PrintGCDetails”,“true”)
资料来源:
希望有帮助 您是否有任何指向Sun/Oracle站点的链接?并且您确定jvm选项在运行时不能更改?查看建议com.Sun.management.HotSpotDiagnosticXbean#setVMOption(String,String)可以帮助您。但一般来说,我不会依赖它,我可以在运行时改变JVM模式:解释器或JIT;或者一些JIT试探法(例如-XX:CompileThreshold)?