IOUtils.toByteArray()内存不足错误



我在代码的下一行得到OOM错误。有办法解决吗?我试着增加堆大小,但没有用。

FileInputStream inputDoc = new FileInputStream(inputDoc1);
byte[] bytes = IOUtils.toByteArray(inputDoc);
upl.edmsDocument = bytes;

更新:添加了以下参数-Xms2048m -Xmx2048m -Xincgc然后我可以连续上传一些大文件,但性能不一致。

如果您知道输入的大小,则应该使用toByteArray(inputDoc1, inputDoc1Size)而不是toByteArray(inputDoc1)。请注意,如API文档中所述,您无论如何都受到Integer.MAX_VALUE条目的限制。

相关内容

  • 没有找到相关文章

最新更新