GraphicsMagick 异常

本文记录了一次使用im4java-1.4.0和GraphicsMagick-1.3.17在CentOS环境下遇到的内存溢出错误,并详细分析了内存使用情况。通过加大Swap空间成功解决了该问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

环境:

im4java-1.4.0 + GraphicsMagick-1.3.17 ,CentOS操作系统

异常信息如下:

Caused by: java.io.IOException: Cannot run program "gm": java.io.IOException: error=12, 无法分配内存
at java.lang.ProcessBuilder.start(ProcessBuilder.java:471)
at org.im4java.process.ProcessStarter.startProcess(ProcessStarter.java:407)
at org.im4java.process.ProcessStarter.run(ProcessStarter.java:312)
at org.im4java.core.ImageCommand.run(ImageCommand.java:215)
... 50 more
Caused by: java.io.IOException: java.io.IOException: error=12, 无法分配内存
at java.lang.UNIXProcess.<init>(UNIXProcess.java:265)
at java.lang.ProcessImpl.start(ProcessImpl.java:112)
at java.lang.ProcessBuilder.start(ProcessBuilder.java:464)
... 53 more

查看内存:

-bash-3.2$ free -m
total used free shared buffers cached
Mem: 1978 1965 12 0 3 221
-/+ buffers/cache: 1741 237
Swap: 1027 1027 0

分析:

物理内存基本被用光了,free 还有12M,cached 还有221M,Swap 还有0M 。一台机器上运行了很多其它程序,内存是被其它程序占用的,如WebSphere。

解决:

加内存来不及,还要去采购,所以只加大了Swap的空间,再也没有报错。

常见异常总结:

java.io.IOException: error=12, 无法分配内存
java.io.IOException: error=2, No such file or directory
java.io.IOException: error=24, Too many open files
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值