更改垃圾收集方法

问题描述 投票:0回答:1

我们从Java 8升级到Java 11,现在当我们使用Java的程序运行时,它似乎耗尽了内存,这让我觉得垃圾收集出了问题。

我更改了以下值

"-Xms512m" "-Xmx512m"

对于这些值:

"-Xms512m" "-Xmx4096m"

但这似乎没有帮助。我想尝试强制 Java-11 使用与 Java-8 相同的默认垃圾收集方法,因为那里一切正常。

我需要编辑哪个文件才能强制使用某个垃圾收集?我希望 Java-11 使用

Parallel/Throughput GC

有什么建议吗?

java-8 garbage-collection java-11
1个回答
0
投票

您可以通过给 jvm 选项 -XX:+UseParallelGC 来告诉 Java 11 使用并行/吞吐量收集器,这也会隐式启用 UseParallelOldGC。请参阅https://docs.oracle.com/en/java/javase/11/gctuning/available-collectors.html

不过我同意这些评论。我怀疑所使用的 GC 不是问题的真正原因。相反,我怀疑您存在内存泄漏或内存管理问题,并且使用 G1GC 比使用 ParallelGC 更明显。

正确的解决方案是调查问题的根本原因。摆弄 GC 选项是一个创可贴解决方案。即使修复现在有效,您将来也可能再次遇到问题;例如如果您的输入数据集变得更大。

© www.soinside.com 2019 - 2024. All rights reserved.