使用指定的内存量限制java程序

Pro*_*yb2 2 java

如何从消耗大量内存中设置java程序?System.out.println会不断增加内存消耗?

我使用VisualVM进行分析,我不太了解如何修复代码的某些部分.

mar*_*cog 5

使用-Xmxn标志,例如java -Xmx100m foo限制foo为100MB.

-Xmxn

指定内存分配池的最大大小(以字节为单位).此值必须是1024的倍数大于2MB.附加字母k或K表示千字节,或m或M表示兆字节.根据系统配置在运行时选择默认值.有关更多信息,请参阅HotSpot人体工程学

例子:

-Xmx83886080

-Xmx81920k

-Xmx80m

值得一读:http://javahowto.blogspot.com/2006/06/6-common-errors-in-setting-java-heap.html

不断使用System.out.println()不应该增加内存使用量.每个调用都独立于下一个调用,它们不会构建一个已用存储器的存储.