【发布时间】:2017-04-11 05:21:40
【问题描述】:
我的 java 进程挂起。它读取输入数据并将其解析为 Integer[] 并将它们写入磁盘。
jvisualvm 显示进程正在完全使用堆空间。 (java.lang.Integer 和 java.lang.Integer[] 分别使用 77% 和 22% 的堆空间)
当内存容量不足时,java 进程死亡并显示 OutOfMemory 错误消息。
为什么我的进程挂在那里? 我该如何解决这个问题?
【问题讨论】:
-
如果您想获得问题的答案,请尝试发布您的代码。如果没有代码,我只能建议您尝试增加堆大小:- Xmx 选项。如果问题仍然存在,您应该看看如何释放资源:程序运行时您真的需要所有这些 Integer 和 Integer[] 吗?
标签: java heap-memory