next up previous
Next: 14.3 waitセット Up: 14 待ちと通知のメソッド Previous: 14.1 一時停止・ロック解放メソッドwait

14.2 通知メソッドnotifyAll, notify

notifyAllメソッドは,条件が変化するのを待っている すべてのスレッドに通知を行います.通知が行われると, そのスレッドはオブジェクトのロックを再獲得した後にwaitから戻る. 通知のコードは,普通は次のようになる.

synchronized void changeCondition() {
  ... 条件の検査でしようされる値を変更する.
  notifyAll();  // あるいは notify()
}
notifyAllのほかにnotifyというメソッドもあるが,これは 一つのスレッドが起こされるというもので,どのスレッドに通知するか がはっきりしているときに使う.

generated through LaTeX2HTML. M.Inaba 平成18年5月7日