gpt4 book ai didi

java - 如何保证将特定 GB 分配为 JVM 的堆外内存

转载 作者:塔克拉玛干 更新时间:2023-11-02 08:45:29 24 4
gpt4 key购买 nike

-Xmx10g 保证 JVM 从操作系统获取 10G 用于进程。同样,我想为堆外使用保证特定数量的内存(比如 4g)。

如果我机器的 RAM 是 8GB,而我的 java 进程的 Xmx 是 2G。现在,可能有其他进程可能会占用一些内存。因此,当我想启动我的 JVM 时,我想指定我想在我的 JVM 中使用的堆外内存量。

-XX:MaxDirectMemorySize 仅指定最大直接内存大小。

如何保证特定大小的堆外内存的可用性?是否有任何参数。

最佳答案

您对参数 -Xmx10g 的理解不太正确。它允许 JVM 向操作系统请求最多 10GB 的内存用于其堆。它不保证 JVM 会得到它。事实上,如果您的系统没有足够的内存(物理内存和分页内存),JVM 将无法获取它。

对于其他内存(堆除外),JVM 会主动申请,如果足够就获取。但同样,没有保证,也没有保证参数。

关于java - 如何保证将特定 GB 分配为 JVM 的堆外内存,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28047978/

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