我试图理解ProcessBuilder机制。一旦调用ProcessBuilder.start()方法,它将跟踪shell命令。
命令是否会等待命令返回成功,或者继续执行其他命令。
如果ProcessBuilder没有等到被调用的命令,有什么办法可以让方法等待一个标志。
答案 0 :(得分:1)
根据我对JavaDoc for the ProcessBuilder
的理解,它只会生成一个单独的进程并继续执行。
要等到命令完成(成功/失败),我建议你在Process#waitFor()
返回的Process
对象上调用ProcessBuilder#start()
。然后,您可以查询exitValue()
等,并采取必要的措施。