【问题标题】:Is the garbage-first (G1) collector "production ready" in Java 6?Java 6 中的垃圾优先 (G1) 收集器“生产就绪”了吗?
【发布时间】:2012-03-13 18:16:33
【问题描述】:

G1 垃圾收集器在最新版本的 Java (6) 中是否仍被认为是实验性的?它是否安全并可以投入生产使用?

编辑:我指的是 Oracle JVM。

【问题讨论】:

  • 这仅限于 1.6 JVM 吗? Java 7/1.7? (Java 6 不限于 Sun/Oracle JVM 实现。)
  • G1 GC 特定于 Sun/Oracle JVM,对于最近的 6 和 7。
  • 一个关键问题是 G1 的性能可能不会比 CMS 好,具体取决于您的应用程序。恕我直言,您无法通过减少产生的垃圾量来提高性能,那么 GC 的选择就变得不那么重要了。

标签: java garbage-collection jvm


【解决方案1】:

不建议这篇Oracle 文章,它仍然是实验性。它将取代 CMS,但它似乎还不是很高效:Relative Performance of Java's Garbage First (G1) Garbage Collector?

编辑:

所以现在JDK7u4 中“完全支持”G1,它不再被认为是实验性的,所以我猜它是production ready! .

【讨论】:

  • 请注意,该问题的最新答案已超过一年。这些仍然是真的吗?
  • 我真的不知道不要自己研究:/ 如果 Oracle 文档认为它是实验性的,它的效率可能仍然低于 CMS。这是长期的替代品。因此,在 Oracle 告知 CMS 已被弃用之前,我认为最好避免使用 G1。
  • 这正是我问的原因。我看到了那些文档。它们可能已经过时了。
  • 衡量效率与您的应用程序和您提供的不同 JVM 选项完全相关。如果您自己进行了足够的测试以确保 G1 更好,那么我认为没有任何理由不使用它。我提供的 Oracle 文章已于 2010 年 7 月 16 日星期五发布。这个问题也提供了很好的提示 (2010)stackoverflow.com/questions/2254041/…。不到 2 年我不认为它已经过时了。
【解决方案2】:

Java 6:更新 20。

Java 7:原始版本有它。

Oracle JVM 是指 Sun HotSpot?它可能与 JRockit 混淆。更喜欢称之为 HotSpot。

【讨论】:

    猜你喜欢
    • 2011-03-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-05-24
    • 1970-01-01
    • 1970-01-01
    • 2019-02-08
    • 2014-02-19
    相关资源
    最近更新 更多