ProcessBuilder pb = new ProcessBuilder("notepad");
Process p = pb.run();
System.out.println("Notepad is closed")
上面的代码运行正常并打开记事本。但是,在手动关闭记事本窗口之前,不会打印print语句。这是因为Java等待进程终止。无论如何我可以打开一个进程并检查窗口是否已加载?
答案 0 :(得分:1)
ProcessBuilder.start()方法不会暂停程序执行。
您可以像这样使用:
ProcessBuilder pb = new ProcessBuilder("notepad");
Process p = pb.start();
System.out.println("This will print right after notepad is launched.")
然后,您可以使用进程对象从程序中读取任何输出,终止程序或暂停程序执行直到完成。
以下是参考页面:Process