java读取大文本文件溢出
我需要用java读取一个360M的txt文件到内存然后进行处理,必须全部读入,不能一部分一部分读入,已经设置了参数-Xmx1024m,给了1G的内存读360M的文件还是会溢出,不过是读取了百分之80之后溢出的。不知道各位知不知道这是什么原因,我觉得这1G内存eclipse应该没有完全利用,而且我将参数设置为Xmx1200m后并没有多读取任何一条数据。
[解决办法]
你设置-Xmx1024m是设置的java堆内存的大小,但是堆内存也分为很多块,你的用意是要缓存在内存当中,那么很明显这些对象都将会进入老年代。一办JVM的新生代与老年代的比例差不多应该是8:3。当然这个参数不同的虚拟机有不同是的比例。而且jvm中肯定也会有其他的对象。你试着将JVM继续扩大吧。当然这个也只是我的看法而已。
[解决办法]
设置的是eclipse的内存还是run configration那里设置的内存?
[解决办法]