请注意:这适用于Minecraft服务器。
在Java中,我可以指定哪些选项使Java不会分配RAM ,直到所有空闲RAM都被填满?
这是我目前使用的RAM的图片:
Allocated Memory: 1458MB
Free Memory: 514MB
Totaly Memory: 4062MB
任务管理器说Java正在使用1458MB的RAM,这就是问题所在。服务器只使用944MB(1458-514),我想要一种方法来尽可能降低内存使用率,直到空间被填满。
目前的论点:-server -Xincgc -Xms512M -Xmx4096M -XX:ParallelGCThreads=4 -XX:+AggressiveOpts -jar cauldron.jar nogui
答案 0 :(得分:1)
您正在使用-Xmx4096M
参数,该参数允许JVM分配最多4096MB的内存。
如果您想减少系统中的内存使用量,则应减少此值。
来自java tool文档:
-Xmxsize
指定内存分配池的最大大小(以字节为单位),以字节为单位。该值必须是1024的倍数且大于2 MB。附加字母k或K表示千字节,m或M表示兆字节,g或G表示千兆字节。默认值是在运行时根据系统配置选择的。
-Xmx选项相当于-XX:MaxHeapSize。