Hi! I'm also using the same method (waitFor) but it doesn't seem to work. Can someone tell me what I'm doing wrong here. Here's a part of my code:
//call on connected components
Runtime rt = Runtime.getRuntime();
// initialize
Process proc1 = rt.exec("java.exe ConnectedComponents Blood "+outFileName+1+".txt");
Process proc2 = rt.exec("java.exe ConnectedComponents Skin "+outFileName+1+".txt");
Process proc3 = rt.exec("java.exe ConnectedComponents Blood "+outFileName+2+".txt");
Process proc4 = rt.exec("java.exe ConnectedComponents Skin "+outFileName+2+".txt");
Process proc5 = rt.exec("java.exe ConnectedComponents Blood "+outFileName+3+".txt");
Process proc6 = rt.exec("java.exe ConnectedComponents Skin "+outFileName+3+".txt");
Process proc7 = rt.exec("java.exe ConnectedComponents Blood "+outFileName+4+".txt");
Process proc8 = rt.exec("java.exe ConnectedComponents Skin "+outFileName+4+".txt");
Process proc9 = rt.exec("java.exe ConnectedComponents Blood "+outFileName+5+".txt");
Process proc10 = rt.exec("java.exe ConnectedComponents Skin "+outFileName+5+".txt");
Process proc11 = rt.exec("java.exe ConnectedComponents Blood "+outFileName+6+".txt");
Process proc12 = rt.exec("java.exe ConnectedComponents Skin "+outFileName+6+".txt");
Process proc13 = rt.exec("java.exe ConnectedComponents Blood "+outFileName+7+".txt");
Process proc14 = rt.exec("java.exe ConnectedComponents Skin "+outFileName+7+".txt");
Process proc15 = rt.exec("java.exe ConnectedComponents Blood "+outFileName+8+".txt");
Process proc16 = rt.exec("java.exe ConnectedComponents Skin "+outFileName+8+".txt");
Process proc17 = rt.exec("java.exe ConnectedComponents Blood "+outFileName+9+".txt");
Process proc18 = rt.exec("java.exe ConnectedComponents Skin "+outFileName+9+".txt");
Process proc19 = rt.exec("java.exe ConnectedComponents Blood "+outFileName+10+".txt");
Process proc20 = rt.exec("java.exe ConnectedComponents Skin "+outFileName+10+".txt");
Process proc21 = rt.exec("java.exe ConnectedComponents Blood "+outFileName+11+".txt");
Process proc22 = rt.exec("java.exe ConnectedComponents Skin "+outFileName+11+".txt");
Process proc23 = rt.exec("java.exe ConnectedComponents Blood "+outFileName+12+".txt");
Process proc24 = rt.exec("java.exe ConnectedComponents Skin "+outFileName+12+".txt");
Process proc25 = rt.exec("java.exe ConnectedComponents Blood "+outFileName+13+".txt");
Process proc26 = rt.exec("java.exe ConnectedComponents Skin "+outFileName+13+".txt");
Process proc27 = rt.exec("java.exe ConnectedComponents Blood "+outFileName+14+".txt");
Process proc28 = rt.exec("java.exe ConnectedComponents Skin "+outFileName+14+".txt");
Process proc29 = rt.exec("java.exe ConnectedComponents Blood "+outFileName+15+".txt");
Process proc30 = rt.exec("java.exe ConnectedComponents Skin "+outFileName+15+".txt");
Process proc31 = rt.exec("java.exe ConnectedComponents Blood "+outFileName+16+".txt");
Process proc32 = rt.exec("java.exe ConnectedComponents Skin "+outFileName+16+".txt");
try
{
proc1.waitFor();
proc2.waitFor();
proc3.waitFor();
proc4.waitFor();
proc5.waitFor();
proc6.waitFor();
proc7.waitFor();
proc8.waitFor();
proc9.waitFor();
proc10.waitFor();
proc11.waitFor();
proc12.waitFor();
proc13.waitFor();
proc14.waitFor();
proc15.waitFor();
proc16.waitFor();
proc17.waitFor();
proc18.waitFor();
proc19.waitFor();
proc20.waitFor();
proc21.waitFor();
proc22.waitFor();
proc23.waitFor();
proc24.waitFor();
proc25.waitFor();
proc26.waitFor();
proc27.waitFor();
proc28.waitFor();
proc29.waitFor();
proc30.waitFor();
proc31.waitFor();
proc32.waitFor();
}
catch ( InterruptedException e )
{
System.err.println(e);
return;
}
System.out.println("connected components completed!");
+-+-+-+-+
I would also like to add that the executed external
java program also calls on yet another java program. I also used waitFor() on this program. Would that be the problem?