我正在做一些花哨的东西,我真的需要分配大约1 GB。Java堆空间不会增加使用-Xmx 1g
我的电脑有8GB 64位系统,所以这不是问题。
我使用-Xmx 4g
来增加我的堆空间,但可悲的是,根本不起作用。
我用:
Runtime rt = Runtime.getRuntime();
long totalMem = rt.totalMemory();
long maxMem = rt.maxMemory();
long freeMem = rt.freeMemory();
double megs = 1048576.0;
System.out.println ("Total Memory: " + totalMem + " (" + (totalMem/megs) + " MiB)");
System.out.println ("Max Memory: " + maxMem + " (" + (maxMem/megs) + " MiB)");
System.out.println ("Free Memory: " + freeMem + " (" + (freeMem/megs) + " MiB)");
这表明我:
Total Memory: 259522560 (247.5 MiB
Max Memory: 259522560 (247.5 MiB)
Free Memory: 0 (0 MiB)
我真的不知道我在做什么错。你们中有人有想法吗?
非常感谢!
-Xmx4g它没有什么不同,它仍然不起作用 – Daniel 2014-08-30 22:03:18
@Daniel如果它没有帮助,那么你可能是以错误的方式传递参数?你能给我们你正在使用的整个命令行吗?您必须在类名前面设置参数。如果你把它放在后面,它会解释为什么它没有失败,你的超级空白。 – eckes 2014-08-31 00:55:59