作者ryannork (晴雨天)
看板java
标题[JSP ] 用timer关闭process
时间Sat Oct 29 22:30:50 2011
我在主程式里加了以下这一段
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
1F:推 PsMonkey:你要不要详述 pro 是啥、怎麽建立的? 10/30 00:12
补上两行CODE,正要补就看到你的留言了@@
※ 编辑: ryannork 来自: 122.125.93.214 (10/30 00:26)
2F:→ tkcn:先不说别的,schedule 完马上 cancel 会有问题吧 (参阅API) 10/30 12:49
3F:推 PsMonkey:噗... 还是楼上眼尖... 10/30 12:58
4F:→ ryannork:拿掉CANCEL系统就正常了,但是我看处理程序的EXE档还在跑 10/30 14:50
5F:→ ryannork:感谢tkcn的解答… 10/30 14:53
6F:→ tkcn:process 本身有文字输出吗? 10/30 15:25
7F:→ ryannork:有 10/30 23:26
8F:→ tkcn:还是先在 timer 里头塞 log,确认 destroy 有没有被执行吧 10/31 22:43
9F:→ ryannork:如果确认Destroy()没有确实被执行该怎麽解决呢 11/13 18:49