java7 G1选项

我找不到与G1运作方式有关的任何选项。 以下两个命令不再适用于java7。

-XX:+G1ParallelRSetUpdatingEnabled -XX:+G1ParallelRSetScanningEnabled 

只有我知道的对G1有影响的选项是:

  • 激活:

    -XX:+UnlockExperimentalVMOptions -XX:+UseG1GC

  • 设置G1尝试满足的最大GC暂停时间目标(以毫秒为单位):

    -XX:MaxGCPauseMillis=

  • 设置GC暂停累计达到MaxGCPauseMillis的时间间隔:

    -XX:GCPauseIntervalMillis=

  • 设置年轻一代的大小以影响疏散暂停时间:

    -XX:+G1YoungGenSize=512m (某些版本也禁用)

  • 设置(不特定于G1)幸存者空间的大小

    -XX:SurvivorRatio=6 (和其他与幸存者相关的选项)

快速警告

请注意,所有-XX选项类型都被认为是实验性的,并且可能随时更改(因此,通常不是您想要粘贴在.{bat,sh}wrapper.conf脚本或用于启动您的配置文件的内容。企业应用。

它们非常有用,但如果你想要一个稳定耐用的发射器,不要太依赖它们。


您提到的2个选项,虽然最初在G1的Java SE 6更新过程中首次公开发布时可用,但现在已被弃用。 在某些版本中有G1YoungGenSize


资料来源:

  • Java SE 6 Update 14发行说明
  • G1 Garbage First Collector简介
  • Java HotSpot VM选项
  • 还有一个关于JVM调优的演示文稿

Java 7 update 4现在“完全支持”G1垃圾收集器,但似乎这些参数不再可用。 🙁

这些链接为允许的JVM标志提供了更多信息:

G1 GC的描述

JVM选项