Java调用外部程序导致too many open files错误的解决方法

Process p = Runtime.getRuntime().exec("ls");


类似这种调用外部程序的代码如果调用了很多次后,可能会出现too many open files的错误。

原因是子进程的标准输入流、标准输出流、标准错误流没有全部关闭,即使流没有使用也需要关闭。

p.getInputStream.close();
p.getOutputStream.close();
p.getErrorStream.close();


你可能感兴趣的:(java)