【发布时间】:2018-05-24 09:46:51
【问题描述】:
java.lang.Process.waitFor() 和 exitValue() 有区别吗?
【问题讨论】:
-
如果进程尚未终止,
exitValue()会引发异常。waitFor()等待。我只是通过查看documentation
java.lang.Process.waitFor() 和 exitValue() 有区别吗?
【问题讨论】:
exitValue() 会引发异常。 waitFor() 等待。我只是通过查看documentation
exitValue 如果子进程未终止,则抛出 IllegalThreadStateException,如果已终止,则返回退出值。
WaitFor 将阻塞调用线程,直到子进程终止,如果它已经终止,则立即返回。
所以我想说当子进程已经终止时它们的行为相同,但在它仍在运行时会表现不同。
如果子进程正在运行,exitValue 将抛出异常,waitFor 将阻塞调用线程。
【讨论】: