我阅读Java HotSpot VM Options。我看到了一些有趣的VM开关,大多与字符串有关-这对我来说很有价值,因为我的应用程序正在进行一些繁重的字符串操作。这些开关是:
-XX:+UseCompressedStrings
-XX:+UseCompressedStrings
个-XX:+OptimizeStringConcat
我想知道-这些开关是默认打开的吗?使用它们的真实的世界经验是什么?它们有什么不同吗?
我阅读Java HotSpot VM Options。我看到了一些有趣的VM开关,大多与字符串有关-这对我来说很有价值,因为我的应用程序正在进行一些繁重的字符串操作。这些开关是:
-XX:+UseCompressedStrings
-XX:+UseCompressedStrings
个-XX:+OptimizeStringConcat
我想知道-这些开关是默认打开的吗?使用它们的真实的世界经验是什么?它们有什么不同吗?
4条答案
按热度按时间a1o7rhls1#
要检查默认值,请使用
要找到您想要的内容,您可以
ifsvaxew2#
我知道
-XX:+UseCompressedStrings
在Java7中被删除了,因为它太难支持了。对于Java 7更新40
c9qzyr3d3#
考虑到字符串的性能,请看一下
-XX:+PrintStringTableStatistics
和-XX:StringTableSize=
。Java 7提供了一些不错的特性,允许在使用中间字符串时调整字符串缓存。这样你就可以优化字符串缓存的大小。以及相关的字符串性能问题解答:Java GC tuning for strings
vx6bjr1n4#
根据我使用PrintFlagsFinal对JDK6u21、JDK7u21和JDK8u191进行的检查,我们得到以下值: