谁知道读取大图片总是报内存溢出~有哪位高手知道?BufferedImageimage=javax.imageio.ImageIO.read(file)... 谁知道读取大图片总是报内存溢出~有哪位高手知道?BufferedImage image = javax.imageio.ImageIO.read(file) BufferedImage image = javax.imageio.ImageIO.read(file);报错:java.lang.OutOfMemoryError
: Java heap space
图片大小是3425px*4843px,我本机内存1g。
------解决方案--------------------------------------------------------
Xms Xmx 把jvm的heap 调大点 试试~~~
------解决方案--------------------------------------------------------
设置一下stack size的大小 java 后跟参数即可设置,具体参数如下:
-Xms size set initial Java heap size
-Xmx size set maximum Java heap size
-Xss size set java thread stack size
------解决方案--------------------------------------------------------
用java.exe -Xmx1024m -Xms256m ....来运行的程序,你机器是1G但是又没分配给jvm
------解决方案--------------------------------------------------------
ImageIO.read(File file)使用来自boolean getUseCache() 和 File getCacheDirectory()的当前缓存设置控制所创建的 ImageInputStream 中的缓存。其中getUseCache()默认设定是true,getCacheDirectory()返回的是setCacheDirectory(File cacheDirectory)所设定的目标,如果用户没有明显设定,那么getCacheDirectory()返回的将是null。