首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在应用程序中设置Java的GC选项

在应用程序中设置Java的GC选项
EN

Stack Overflow用户
提问于 2013-01-28 16:27:51
回答 2查看 861关注 0票数 2

Java选项(如MaxGCPauseMillis (用于G1垃圾收集器)可以从Java应用程序内部设置,还是必须在用于启动应用程序的命令行上设置?

也就是说,我可以在代码中做以下任何部分:

代码语言:javascript
复制
java -XX:+UseG1GC -XX:MaxGCPauseMillis=10 -XX:GCPauseIntervalMillis=100 -jar app.jar
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-01-28 19:35:43

不,,这是不可能的,。您不能更改已经启动的VM的GC选项。

此外,我不认为这是一个好主意。GC选项应该独立于源代码,因为

  • 对于相同的应用程序,可能需要不同的GC选项(),具体取决于VM使用的、硬件使用的等等。
  • GC选项是完全符合应用程序功能需求的正交属性。

现代应用程序(例如Eclipse)通常使用一个属性文件,您可以在其中指定VM选项,包括GC调优选项,我认为这是一个干净的解决方案。

票数 6
EN

Stack Overflow用户

发布于 2013-01-29 10:08:35

使用来自JDK的-XX jinfo -flag命令对某些(但很少)的java选项云进行修改,以运行java进程。

您可以使用-XX:+PrintFlagsFinal选项查看所有JVM XX选项的列表,这些选项具有{可管理}类型的云在运行时由jinfo修改。

但这可能是个坏主意。如果您关注应用程序中的GC行为,则必须了解GC。没有神奇的XX选项,也没有其他捷径.不幸的是。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/14566532

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档