gpt4 book ai didi

java - 如何动态计算可用内存量并增加Java中的堆空间?

转载 作者:行者123 更新时间:2023-11-29 05:39:29 27 4
gpt4 key购买 nike

我用 Java 编写了一个角色扮演游戏。人类玩家与计算机对战,因此玩家和计算机分别拥有一组英雄和怪物来控制。我已经实现了一套路径查找和其他算法,用于目标获取、路径查找、技能、准确性和健康。问题在于,通过同时为不同的角色运行算法,游戏很快就会耗尽所有可用内存并出现 Java 堆空间错误。现在我可以用这个脚本运行我的代码:(java -Xmx1g Program) 并增加 Java 堆的数量,但我不知道有多少内存可供游戏使用,当我计算错误数量时,代码会给出相同的错误并且挂起。我的问题是:是否有计算运行时可用内存量的方法?我也知道在 Java 中不能在运行时增加堆空间。那么我的问题还有其他解决方案吗?

注意:我已经阅读了有关 SO 的以下问题,但找不到解决方案:

Increase heap size in Java

java.lang.OutOfMemoryError: Java heap space

dynamically increasing java heap space

最佳答案

您可以在运行时检查您有多少可用空间:

Runtime.getRuntime().freeMemory();

但是你不能增加它。

关于java - 如何动态计算可用内存量并增加Java中的堆空间?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18150926/

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