gpt4 book ai didi

java - GC 堆大小和程序内存开销

转载 作者:塔克拉玛干 更新时间:2023-11-02 20:12:43 26 4
gpt4 key购买 nike

我想弄清楚我的应用程序发生了什么。

问题:

  • GC 调用并没有像它应该的那样减少未使用的堆大小,但它应该减少,因为我正在使用串行 GC(或 UseParNewGC)和积极的堆比率。

  • 程序使用的内存总是比当前使用和未使用的堆大很多,在我看来即使包含其他 JVM 内存 + 堆也太多了

使用的命令行:

java -XX:+UseSerialGC -XX:MinHeapFreeRatio=5 -XX:MaxHeapFreeRatio=10 -Xmx2500M -cp XXXXXX.jar xxxx.xxxx.xxxx
pause

尝试使用 UseParNewGC,结果相同

系统:Win7 SP14GB RAM + 4GB 交换文件2.99GHZJava 1.7 + JDK 1.7

请看图片让事情更清楚: http://i.stack.imgur.com/i3sxw.jpg

最佳答案

与其设置自由比率,不如尝试将 New Generation 的大小设置为能够让短命对象消亡的大小。尝试尽可能少地提升到 Old Generation

请记住,大型 年轻一代 会变成大型集合。

然后将最大 Old Generation 设置为不会花费太长时间来完成 GC 但不会持续运行它们的大小。

关于java - GC 堆大小和程序内存开销,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11698053/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com