imageIO.read invoke 错误

imageIO.read() 超大图片上传出现的问题(异常:InvocationTargetException)。

 

这个问题是内存太低导致

设置内存前内存情况:

JVM MAX MEMORY: 64M

JVM IS USING MEMORY:64M

 

 

设置内存后内存情况:

JVM MAX MEMORY: 508M

JVM IS USING MEMORY:508M

 

另:

eclipse 结合tomcat 内存设置和tomcat 独立启动内存设置

1:

Eclipse->Window->Preferences->Server->Runtime Environments->选中Apache Tomcat v5.0->点击Edit按钮->在弹出对话框里点击JRE后面的Installed JREs按钮->在弹出对话框中选中tomcat使用的那个JRE->点击Edit按钮

 

->在弹出对话框中,找到Default VM Arguments,并在输入框中输入:-Xms512M -Xmx512M

 

 

2:

在tomcat/bin 下找到 catalina.bat 文件打开,再找到  set JAVA_OPTS = -Xms512M -Xmx512M

 

 

 

关于堆内存分配:

JVM初始分配的内存由-Xms指定,默认是物理内存的1/64;JVM最 大分配的内存由-Xmx指定,默认是物理内存的1/4。默认空余堆内存小于40%时,JVM就会增大堆直到-Xmx的最大限制;空余堆内存大于70%时, JVM会减少堆直到

 

-Xms的最小限制。因此服务器一般设置-Xms、-Xmx相等以避免在每次GC 后调整堆的大小。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值