Метод 1, клонирование
Я не знаю, насколько это хорошая идея, но вы можете попробовать сделать что-то вроде этого:
ProcessBuilder customer = new ProcessBuilder("java.exe","-cp","bin","lab_3.Customer");
Process runCustomer = customer.clone().start();
.clone () сделаетскопируйте его, а затем начните процесс с него.Теперь вы можете сделать:
ProcessBuilder customer = new ProcessBuilder("java.exe","-cp","bin","lab_3.Customer");
Process runCustomer1 = customer.clone().start();
Process runCustomer2 = customer.clone().start();
Process runCustomer3 = customer.clone().start();
Process runCustomer4 = customer.clone().start();
Метод 2, массив аргументов
Также вы можете хранить свои аргументы в массиве, и каждый раз, когда вы захотите начать новый Process
, вы простосоздайте новый экземпляр ProcessBuilder
, например так:
String command = "java.exe";
String[] args = new String[]{ "-cp", "bin", "lab_3.Customer" };
for(int i = 0; i < numOfProcesses; i++) {
new ProcessBuilder(command, args).start();
}
И вот так, если вам нужно сохранить созданные Processes
:
String command = "java.exe";
String[] args = new String[]{ "-cp", "bin", "lab_3.Customer" };
Process[] processes = new Process[numOfProcesses];
for(int i = 0; i < numOfProcesses; i++) {
processes[i] = new ProcessBuilder(command, args).start();
}