繁体   English   中英

Java堆大小内存

[英]Java Heap size Memory

我有一个Java应用程序,它引发Java堆大小内存错误。 我的应用程序是将文件转换为.csv格式并将其加载到DB中。 当文件内容较少时,我的应用程序运行良好。 但是当我有成千上万的记录时,我会得到堆大小的内存。 使用InputStream,OutputStream,BufferedWriter等类时,发生内存泄漏的所有可能性是什么,请帮助我解决此Heap size内存错误。 我坚持了一个星期。 下面给出的是我得到的堆大小错误

线程“主”中的异常java.lang.OutOfMemoryError:Java堆空间

因此,您正在将整个文件读入内存,然后将其刷新到DB。

而不是这样做,您需要将文件大块读取到内存中并将它们刷新到DB中。

没有代码就不可能给出更详细的答案。

运行文件时,需要将-Xmx ##添加到命令行。

java -Xmx4G

会为您提供4 Gb可用的JVM。

编辑:如果可能的话,您应该一次加载一个位,例如@Oleg。

我建议您增加堆大小,可以在命令行中使用java -Xmx2048m

您现在将拥有2GB的内存。

点击此链接了解更多

您可以增加堆大小。

如果您可以共享您的代码,我可以告诉您可以通过哪些方式降低资源利用率

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM