2013-05-21 100 views
0
ProcessBuilder pb = new ProcessBuilder("notepad"); 
Process p = pb.run(); 
System.out.println("Notepad is closed") 

上面的代码将正常运行并打开记事本。但是,直到我手动关闭记事本窗口后,打印语句才会打印。这是因为Java等待进程终止。无论如何,我可以打开一个进程并检查窗口是否已加载?如何检查进程是否正在运行

回答

1

ProcessBuilder.start()方法不会暂停程序执行。

您可以使用就像这样:

ProcessBuilder pb = new ProcessBuilder("notepad"); 
Process p = pb.start(); 
System.out.println("This will print right after notepad is launched.") 

然后,您可以使用进程对象读取来自程序的任何输出,直到它完成杀程序,或暂停执行程序。

以下是参考页:Process

相关问题