
[英]Java OutofMemory Error in Ubuntu Even if enough memory available
[英]Java goes OutOfMemory even with enough RAM
我有一个使用以下jvm选项的应用程序:
-Xmx512m -Xms256m -XX:+UseParNewGC -XX:+UseConcMarkSweepGC
-XX:MaxGCPauseMillis=2 -XX:MaxDirectMemorySize=1G
我在具有8GB RAM的Windows 7 x64上运行它。 当任务管理器说正在使用60%的RAM时,就无法运行我的程序,Java会说“内存不足”。 即使从理论上讲,我仍然有将近3gb的可用RAM。 下面是在NetBeans中对我的项目进行性能分析的屏幕截图(直到它突然随机崩溃)。 什么会导致这些问题? 我的程序真的那么贵吗?
(来源: SSmaker.ru )
(来源: SSmaker.ru )
您应该贪婪地分配所需的最低开销。 也就是说,使用-Xms1g -XMx1g之类的东西,因此当您的应用程序实际开始运行时,它已经保留了其最大的堆使用量。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.