Parallel Programming WS 2014/2015 - File DiceBarrier.java
public class DiceBarrier {
private int dices; // number of dice values
private int sum; // sum of dice values
private final int N; // number of dices
DiceBarrier(int n) {
N = n;
}
synchronized public void barrier(int dicenumber, int value) {
dices++;
sum += value;
System.out.println("Dice " + dicenumber + " arrived");
if (!(dices == N)) {
try {
wait();
} catch (InterruptedException ie) {/* ok to ignore */}
} else {
System.out.println("Sum = " + sum);
dices=0;
sum = 0;
notifyAll();
}
}
}
Generiert mit Camelot | Probleme mit Camelot? | Geändert am: 23.12.2014


