读书人

java.lang.OutOfMemoryError: Java he

发布时间: 2014-01-26 14:36:50 作者: rapoo

将开发好的java应用程序(多线程的)部署到linux机器后,运行一段时间就会因
java.lang.OutOfMemoryError: Java heap space而终止.

启动脚本为:JAVA -Xms80m -Xmx256m -XX:ThreadStackSize=128 -jar myApp.jar

虽然jvm的最大内存设为256m但运行很长一段时间后还是超出256,达到330多m.

这种问题如何解决?
如果时内存泄漏,那如何查找导致泄漏的代码?

另外,各位高手能否指点一下防止内存泄漏的编码规则?
谢谢!


------解决方法--------------------------------------------------------
windows 更改系统环境变量
加上JAVA_OPTS=-Xms64m -Xmx512m
Linux 在{tomcat_home}/bin/catalina.sh的前面,加
set JAVA_OPTS= '-Xms64 -Xmx512 '
------解决方法--------------------------------------------------------
你把-Xmx256m 改大点不就好了嘛
------解决方法--------------------------------------------------------
lz的两位做法可以采纳,但绝对不是根本解决问题的方法。


------解决方法--------------------------------------------------------
最好用检测内存泄漏的工具检测一下程序
http://dev.yesky.com/56/2591556.shtml
你可以参考看一下这篇文章

        

读书人网 >Java Exception

热点推荐