gpt4 book ai didi

Java:WAITINGexec进程直到它退出

转载 作者:塔克拉玛干 更新时间:2023-11-03 03:06:47 31 4
gpt4 key购买 nike

我在 Windows 中运行一个 java 程序,它从 Windows 事件中收集日志。创建一个 .csv 文件,在该文件上执行某些操作。

命令被执行并通过管道传输。如何让我的 Java 程序等待进程完成?

这是我使用的代码片段:

Runtime commandPrompt = Runtime.getRuntime();
try {
Process powershell = commandPrompt.exec("powershell -Command \"get-winevent -FilterHashTable @{ logname = 'Microsoft-Windows-PrintService/Operational';StartTime = '"+givenDate+" 12:00:01 AM'; EndTime = '"+beforeDay+" 23:59:59 '; ID = 307 ;} | ConvertTo-csv| Out-file "+ file +"\"");
//I have tried waitFor() here but that does not seem to work, required command is executed but is still blocked
} catch (IOException e) { }
// Remaining code should get executed only after above is completed.

最佳答案

您需要使用 waitFor() 而不是 wait()。这样你的线程就会阻塞,直到执行的命令完成。

关于Java:WAITINGexec进程直到它退出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12448882/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com