Java选项(如MaxGCPauseMillis (用于G1垃圾收集器)可以从Java应用程序内部设置,还是必须在用于启动应用程序的命令行上设置?
也就是说,我可以在代码中做以下任何部分:
java -XX:+UseG1GC -XX:MaxGCPauseMillis=10 -XX:GCPauseIntervalMillis=100 -jar app.jar发布于 2013-01-28 19:35:43
不,,这是不可能的,。您不能更改已经启动的VM的GC选项。
此外,我不认为这是一个好主意。GC选项应该独立于源代码,因为
现代应用程序(例如Eclipse)通常使用一个属性文件,您可以在其中指定VM选项,包括GC调优选项,我认为这是一个干净的解决方案。
发布于 2013-01-29 10:08:35
使用来自JDK的-XX jinfo -flag命令对某些(但很少)的java选项云进行修改,以运行java进程。
您可以使用-XX:+PrintFlagsFinal选项查看所有JVM XX选项的列表,这些选项具有{可管理}类型的云在运行时由jinfo修改。
但这可能是个坏主意。如果您关注应用程序中的GC行为,则必须了解GC。没有神奇的XX选项,也没有其他捷径.不幸的是。
https://stackoverflow.com/questions/14566532
复制相似问题