我的 Java 程序使用 ProcessBuilder(redirectErrorStream 设置为 true),并且有一个循环运行进程的输入流的 read 方法,该方法是阻塞的。然后我调用的外部程序停止等待输入和标准输入。我现在想终止该进程。这不是通过(在单独的线程中)调用进程的destroy方法,并调用inputstream的close方法来阻止read方法阻塞,这样我的初始线程就可以结束它的生命了吗?
由于某种原因process.getInputStream().close()
阻塞。从 JavaDoc 我看不出为什么会发生这种情况。此外,我不明白为什么 javadoc 说“InputStream 的 close 方法什么都不做”。(指向 javadoc 的链接)有人可以解释一下吗?
谢谢 :-)