日期:2014-05-20  浏览次数:20943 次

JAVA运行 内存不够 程序过于缓慢 有没有办法改善
做XML解析 指定必须用DOM做 不能用SAX
开始要把文件全部读取到内存 然后各种统计啊

现在的XML文件也就是400M左右 电脑只有4G内存
运行没有报 OUTOFMEMORY之类的错误
把XMX XMS之类都设到最大物理内存了。

但是运行起来非常非常慢 刚才40分钟没出来结果 实在等不及就关了
请教有没有办法改善的? 或者把内容保存到虚拟内存之类?
并且我也不追求效率。。只要能成功运行一次 让我把结果保存了。就可以了
新人求教 非常感谢

------解决方案--------------------
xms xmx不要设到物理最大值,因为系统需要内存运行的,如果你把内存设这么高,就会不停产生硬盘交换。

此外,你的机器是64位系统吗,jre也是64位的吗? 否则不能够设定2G以上的系统。
------解决方案--------------------
这个应该不是内存问题,应该你分析xml有些方法不合理
------解决方案--------------------
java -Xmx1024M ....

其它的不用改!
------解决方案--------------------
直接把JVM运行内存加大就好了
------解决方案--------------------
探讨
做XML解析 指定必须用DOM做 不能用SAX
开始要把文件全部读取到内存 然后各种统计啊

现在的XML文件也就是400M左右 电脑只有4G内存
运行没有报 OUTOFMEMORY之类的错误
把XMX XMS之类都设到最大物理内存了。

但是运行起来非常非常慢 刚才40分钟没出来结果 实在等不及就关了
请教有没有办法改善的? 或者把内容保存到虚拟内存之类?
并且我也不追求效率。……