Fixes test cases for master-worker-pattern
This commit is contained in:
@ -75,7 +75,7 @@ public abstract class Master {
|
|||||||
}
|
}
|
||||||
|
|
||||||
private void divideWork(Input<?> input) {
|
private void divideWork(Input<?> input) {
|
||||||
List<? extends Input<?>> dividedInput = input.divideData(numOfWorkers);
|
var dividedInput = input.divideData(numOfWorkers);
|
||||||
if (dividedInput != null) {
|
if (dividedInput != null) {
|
||||||
this.expectedNumResults = dividedInput.size();
|
this.expectedNumResults = dividedInput.size();
|
||||||
for (var i = 0; i < this.expectedNumResults; i++) {
|
for (var i = 0; i < this.expectedNumResults; i++) {
|
||||||
@ -83,6 +83,13 @@ public abstract class Master {
|
|||||||
this.workers.get(i).setReceivedData(this, dividedInput.get(i));
|
this.workers.get(i).setReceivedData(this, dividedInput.get(i));
|
||||||
this.workers.get(i).start();
|
this.workers.get(i).start();
|
||||||
}
|
}
|
||||||
|
for (var i = 0; i < this.expectedNumResults; i++) {
|
||||||
|
try {
|
||||||
|
this.workers.get(i).join();
|
||||||
|
} catch (InterruptedException e) {
|
||||||
|
System.err.println("Error while executing thread");
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user