M
Malcolm
Gast
Hallo,
Soviel ich weiss weckt mir notify() irgendeinen wartenden Thread, während mir notifyAll() alle wartenden Threads weckt.
Und nun die Frage:
Angenommen ich habe einen Zähler der zwischen einem maximalen und minimalen Wert hin und her zählt. Thread1 zählt nach oben, Thread2 zählt nach unten. Stößt Thread1 an die obere bzw. Thread2 an die untere Grenze so wird der der Befehl wait ausgeführt. Nachdem der Zähler inkrementiert bzw. dekrementiert wurde wird mit Hilfe von notity() bzw. notifyAll() irgendeiner bzw. alle wartenden Threads geweckt. Kann mir einer sagen ob hier ein notify reicht oder ob ich ein notifyAll() unbedingt brauche um eine Verklemmung zu vermeiden.
Ich wäre auch für ein Beispiel dankbar in dem ich notifyAll() anwenden muss.
mfg Malcolm
Soviel ich weiss weckt mir notify() irgendeinen wartenden Thread, während mir notifyAll() alle wartenden Threads weckt.
Und nun die Frage:
Angenommen ich habe einen Zähler der zwischen einem maximalen und minimalen Wert hin und her zählt. Thread1 zählt nach oben, Thread2 zählt nach unten. Stößt Thread1 an die obere bzw. Thread2 an die untere Grenze so wird der der Befehl wait ausgeführt. Nachdem der Zähler inkrementiert bzw. dekrementiert wurde wird mit Hilfe von notity() bzw. notifyAll() irgendeiner bzw. alle wartenden Threads geweckt. Kann mir einer sagen ob hier ein notify reicht oder ob ich ein notifyAll() unbedingt brauche um eine Verklemmung zu vermeiden.
Ich wäre auch für ein Beispiel dankbar in dem ich notifyAll() anwenden muss.
mfg Malcolm