黑马程序员技术交流社区

标题: Runtime类__毕老师基础视频第18天 [打印本页]

作者: Silvester    时间: 2014-4-28 23:36
标题: Runtime类__毕老师基础视频第18天
本帖最后由 Silvester 于 2014-4-29 00:19 编辑

class RuntimeDemo  {  
               public static void main(String[] args) throws Exception  {  
                                 //以下代码实现了p进程调用QQ后,沉睡4秒,然后杀死进程。                 
                                 Runtime r = Runtime.getRuntime( );
                                 Process p = r.exec("D:\\soft\\qq\\qqfiles\\Bin\\QQ.exe");
                                 Thread.sleep(4000);
                                 p.destroy( );
                }
}
        求助,在毕老师基础视频第18天课程Runtime类时候有个问题,如代码所示:"D:\\soft\\qq\\qqfiles\\Bin"为我的计算机上QQ安装目录,当调用r.exec("notepad.exe")的时候,即调用系统盘System32目录下的记事本程序时,进程能够调用并被成功杀死,但换为调用QQ的时候,QQ能够成功调用,可是进程没被杀死(或者说p.destroy()没有起作用),QQ的登陆界面依然还存在,求大神指点解惑,感谢!
        注: OS: 32位win7,JDK版本:1.7.0_51。


作者: 微笑=.一瞬间    时间: 2014-4-29 10:21
Process类的destroy方法只能杀死父进程,而无法杀死子进程
作者: Silvester    时间: 2014-4-29 11:04
微笑=.一瞬间 发表于 2014-4-29 10:21
Process类的destroy方法只能杀死父进程,而无法杀死子进程

感谢帮助,可是查阅API后Process类的destroy方法杀掉的是子进程啊,是不是那里弄错了?







欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2