Java的GC调整字符串(Java GC tuning for strings)

2019-08-21 01:11发布

剖析我想通了的应用程序,它有很多的堆字符串。

在我的情况,是在堆上创建的字符串,而不是拘留,他们不是文字。

是否有具体的GC调优技术当应用程序中字符串的数量是非常高的追随。

我穿过GC设置跌跌撞撞-XX:+ UseCompressedStrings或-XX + UseStringCache,但不知道这会有所帮助。 没有任何身体尝试这些设置吗?

Java版本 “1.6.0_22”
的Java(TM)SE运行时环境(建立1.6.0_22-B04)
的Java的HotSpot(TM)64位服务器VM(构建17.1-B03,混合模式)

Answer 1:

有关-XX:+UseCompressedStrings ,你应该看看这个问题: 被丢弃在热点JVM的压缩字符串支持?

而且,与-XX+UseStringCache ,看看: JVM -XX:+ StringCache说法?

顺便说一句。 Java 7中自带不错的功能使用实习的字符串时,允许字符串缓存的调整。 见-XX:+PrintSTringTableStatistics-XX:StringTableSize=n 。 这样,您就可以优化字符串缓存大小。



文章来源: Java GC tuning for strings