【问题标题】:JVM Command Line OptionJVM 命令行选项
【发布时间】:2013-09-18 11:19:38
【问题描述】:

根据我在此处找到的其他一些问题,我正在尝试更改服务器 JVM 上的垃圾收集器以对抗 java.lang.OutOfMemoryError: GC overhead limit exceeded 异常。尽管我对这些命令行选项的使用感到有些困惑。这就是我正在做的:

java -XX:+UseConcMarkSweepGC

但是,我收到了usage 消息,但没有任何迹象表明它发生了变化。

这是我看到的输出:

用法:java [-options] 类 [args...] (执行一个类) 或 java [-options] -jar jarfile [args...] (执行一个jar文件) 其中选项包括:........

这是对命令行参数的正确使用吗?我犯了一个愚蠢的错误吗? (经常发生)

【问题讨论】:

    标签: java jvm


    【解决方案1】:

    您在运行java 命令时创建的 JVM 会使用类似的命令行标志,它们不是“全局”开关

    要使用该标志,请将其包含在您正常执行的 VM 参数中。

    另外,请注意启用ConcMarkSweepGC 并不会真正帮助您,因为它可能会更主动地进行垃圾收集。你要么有:

    【讨论】:

    • 是的,伙计,对不起,但这对我来说毫无意义。我已将参数附加到我在 tomcat 服务器上的启动脚本中。问题是,我不知道 wherehow 使用这些命令。你能具体解释一下吗?
    • @chris :我可以,现在您已经实际指定您正在使用 Tomcat。 This thread 描述了在这种情况下如何使用 VM 选项。那就是那里。至于如何,这是一个很大的话题。我将编辑我的答案以包括一些指针。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-09-13
    • 1970-01-01
    相关资源
    最近更新 更多