![](/img/trans.png)
[英]shutdown threads using managedexecutorservice after stipulated time
[英]stipulated time in processbuilder java
在ProcessBuilder中運行命令時可以指定時間嗎? 像這樣:
ProcessBuilder builder = new ProcessBuilder("cmd.exe", "/c", "dir /s");
Process p = builder.start();
此代碼可以長時間運行,例如,我想定界1秒鍾。 我認為放在某個線程中,然后在此之后破壞進程,但是,可能需要一些時間嗎?
謝謝。
您可以在一個單獨的線程中啟動該進程,睡眠1秒鍾,然后可以終止該進程。
new Thread(new Runnable() {
public void run() {
ProcessBuilder builder = new ProcessBuilder("cmd.exe", "/c", "dir /s");
Process p = builder.start();
Thread.sleep(1000);
p.destroy();
}
}).start();
Process p = builder.start();
TimeUnit.SECONDS.sleep(someTime); // Whatever time you want to wait
if (p.isAlive()) p.destroyForcibly();
您無法通過Process API強制執行
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.