问题描述
我需要产生多个相同的过程。 它们使用相同的路径,但是文件内容之一在qs args中更改。 是否为每个流程创建一个新的流程构建器实例? 还是只拥有一个processBuilder实例,并使用processBuilder.start()生成多个进程?
这个
while(true) {
ProcessBuilder processBuilder = new ProcessBuilder(path);
processBuilder.redirectErrorStream(true);
processBuilder.redirectOutput(ProcessBuilder.Redirect.INHERIT);
Process process = processBuilder.start();
}
或这个
ProcessBuilder processBuilder = new ProcessBuilder(path);
processBuilder.redirectErrorStream(true);
processBuilder.redirectOutput(ProcessBuilder.Redirect.INHERIT);
while(true) {
Process process = processBuilder.start();
}
1楼
Java文档说:“每个ProcessBuilder实例管理一系列流程属性。start()方法使用这些属性创建一个新的Process实例。可以从同一实例重复调用start()方法以创建具有相同或相关属性的新子流程。 “
因此,第二种方法应该可以。