java怎么结束执行ba,t终止虚拟机的运行但是不会终止服务器

maoaini_1990 2014-01-02 08:32:19
做了一个系统,后台算法用java实现,用runtime去执行外部程序,当外部程序出现死循环时怎么结束这个死循环,关闭执行外部程序,但是同时不杀死在运行的服务器,系统照常运行。。求指导
...全文
105 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
maoaini_1990 2014-01-02
  • 打赏
  • 举报
回复
引用 1 楼 NNTT2010 的回复:
用runtime去执行taskkill /im 要结束的进程名称 就可以了。
能说的具体点吗 我贴了代码,求指导啊
maoaini_1990 2014-01-02
  • 打赏
  • 举报
回复
import java.io.BufferedReader; import java.io.File; import java.io.FileWriter; import java.io.IOException; import java.io.InputStream; import java.io.InputStreamReader; class ExecCmd { static Runtime runtime1 = Runtime.getRuntime(); static Process process; public static void main(String args[]) throws IOException { File file=new File("E:/Test.java"); FileWriter writer=new FileWriter(file); writer.append(" public class Test{"); writer.append("public static void main(String args[]){"); writer.append("int i=0;"); writer.append("while(true){"); writer.append("i++;System.out.println(\"i=\"+i);}"); writer.append("}}"); writer.close(); new Thread(new Runnable() { public void run() { for (int i = 0; i <= 100; i++) { if (i <= 2) try { Thread.sleep(1000); System.out.println("sleep:"+i); } catch (InterruptedException e) { // TODO Auto-generated catch block e.printStackTrace(); } else { } } } }).start(); String cmd="cmd /c start e:\\Test.bat"; process=runtime1.exec(cmd); } } 这个是我自己模拟的问题在那个else{}里面的语句块应该怎么写。。
长笛党希望 2014-01-02
  • 打赏
  • 举报
回复
用runtime去执行taskkill /im 要结束的进程名称 就可以了。

67,513

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧