看板 java 關於我們 聯絡資訊
我在主程式裡加了以下這一段 String WA_check[] = {"cmd.exe","/c","D:\\EXE_"+RTSNum[1]+".exe"}; Process pro = runtime.exec(WA_check); Timer timer = new Timer(); TimerTask tt = new TimerTask(){ public void run() { pro.destroy(); } }; timer.schedule(tt,10000); timer.cancel(); 為避免runtime到一個死當的程式,所以想在runtime一段時間後, 不管是否死當都給予執行process.destroy();這個動作 我設過0毫秒,一般的程式都能夠關閉,但是遇到會無窮迴圈的程式 網頁就卡在那了,似乎沒能順利關閉… -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 122.125.93.214
PsMonkey:你要不要詳述 pro 是啥、怎麼建立的? 10/30 00:12
補上兩行CODE,正要補就看到你的留言了@@ ※ 編輯: ryannork 來自: 122.125.93.214 (10/30 00:26)
tkcn:先不說別的,schedule 完馬上 cancel 會有問題吧 (參閱API) 10/30 12:49
PsMonkey:噗... 還是樓上眼尖... 10/30 12:58
ryannork:拿掉CANCEL系統就正常了,但是我看處理程序的EXE檔還在跑 10/30 14:50
ryannork:感謝tkcn的解答… 10/30 14:53
tkcn:process 本身有文字輸出嗎? 10/30 15:25
ryannork:有 10/30 23:26
tkcn:還是先在 timer 裡頭塞 log,確認 destroy 有沒有被執行吧 10/31 22:43
ryannork:如果確認Destroy()沒有確實被執行該怎麼解決呢 11/13 18:49