现在做一个java 程序,希望调用别人编好的exe文件,我用的是Runtime.getRuntime().exec(...)这个方法调用,现在想监听这个Process是否已经结束,怎么办呢?

解决方案 »

  1.   

    用Process下的waitFor()
    public abstract int waitFor() throws InterruptedException
    导致当前线程等待,如果必要,一直要等到由该 Process 对象表示的进程已经终止。如果已终止该子进程,此方法立即返回。如果没有终止该子进程,调用的线程将被阻塞,直到退出子进程。
      

  2.   

    执行exe,总有某些变化嘛,用一个线程或Timer来比较那些变化不可以吗?
      

  3.   

    起个Timer就可以了 是就break 把Timer cacel掉
      

  4.   

    将waitFor放在单独一个线程中调用就不会阻塞主线程了,然后当那个线程结束时通知主线程。