草庐IT

UseStringDeduplication

全部标签

java - 为什么/何时不想在 JVM 中启用 Java 8 UseStringDeduplication?

Java8引入了字符串重复数据删除,可以通过使用-XX:+UseStringDeduplication选项启动JVM来启用,允许通过引用类似的String对象而不是保留重复项来节省一些内存.当然,它的有效性因程序而异,具体取决于Strings的利用率,但我认为可以肯定地说,总的来说,它可以被认为对大多数应用程序(如果不是全部)有益,这让我想知道很少有事情:为什么默认不启用?是因为与重复数据删除相关的成本,还是仅仅因为G1GC仍然被认为是新的?是否存在(或可能存在)您不想使用重复数据删除的极端情况? 最佳答案 字符串去重可能有害的情况