Runtime.getRuntime().exec执行阻塞问题解决 .
转自:http://blog.csdn.net/dysj4099/article/details/5985596
当cmd命令执
行出现错误或警告时,主控程序的waitfor方法会被阻塞一直等待下去,查了查资料发现是Runtime.getRuntime().exec方法需要自己处理
stderr 及stdout流,而解决方法即是将它们导出用别的thread处理。
会造成阻塞的代码:
view plaincopy to clipboardprint?
01.Process p = Runtime.getRuntime().exec(cmd);
02.
03.p.waitFor();
Process p = Runtime.getRuntime().exec(cmd);
p.waitFor();
解决方法: