// Lager.java
// -------------------------------------------------------------
class Lager {
int len = 5; // Lagergröße
int[] lager = new int[len]; // Eigentliches Lager
int z=-1; // Füllstandzeiger: Leeres Lager
synchronized void put(int artikel) {
while(z == (len-1)) {
try { wait(); }
catch(Exception e) {
System.out.println("Fehler beim Warten im put()")
System.exit(0);
}
}
z++;
lager[z] = artikel;
notify();
}
synchronized int get() {
while(z == -1) {
try { wait(); }
catch(Exception e) {
System.out.println("Fehler beim Warten im get()")
System.exit(0);
}
}
int artikel = lager[z];
z--;
notify();
return artikel;
}
}