有时,我的java应用程序中出现“java.io.IOException:error = 12,无法分配内存”。
我想在我的机器上重现它。 有没有办法重现这个错误?什么时候Runtime.exec会抛出java.io.IOException?
FYI, [root @ ara~] #java -version java版“1.6.0_22” Java(TM)SE运行时环境(版本1.6.0_22-b04) Java HotSpot(TM)64位服务器VM(版本17.1-b03,混合模式)
答案 0 :(得分:1)
您可以从this获得答案:
将overcommit_memory
设为2(不要过度使用)
echo 2 > /proc/sys/vm/overcommit_memory
运行以下程序:
public class ReproduceException {
public static void main(String[] args) throws IOException {
Runtime.getRuntime().exec("ls");
}
}
答案 1 :(得分:0)
我已经链接了一个问题,该问题解释了导致此问题的原因并至少提供了两种解决方法。根据解释,您应该能够找出导致它的策略...如果您在阅读Q& A后仍然感兴趣。