Java - 读取进程的输出

时间:2015-05-13 09:16:27

标签: java process output

我有代码

Process core = pb.start();
if(!core.waitFor(3, TimeUnit.HOURS))
{
    System.out.println("Process destroyed, path " + root.getAbsolutePath());
    core.destroy();
}
String output = IOUtils.toString(core.getInputStream());
return output;

它必须运行应该不超过3小时的过程。如果它工作得更多,则应该销毁此过程,但无论如何都必须收集所有生成的日志。 我通过它是正确的代码,但今天我已经看到它停在IOUtils.toString(core.getInputStream())行上,因为我认为在调用destroy()并继续工作后它不会被销毁,而IOUtils.toString则是等着它完成了工作。 请告知如何做到这一点,谢谢

0 个答案:

没有答案