- ベストアンサー
Javaのスレッドについて教えて下さい!
AとBはpublic参照で、AはThreadを参照していて、BはObjectを参照しているとする。スレッドAはB.wait()を実行中の際に別のスレッドからAがwaitの実行を停止することを保証するために、一番信頼性のあるコードは、foo.notify(); とfoo.notifyAll()のどちらになりますか?また、他に良いコードはありますか?
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
B以外にwaitを実行しているThreadがなければ、どちらも同じで、 その保証がないならnotifyAll()が良いです。 なお、他にThreadがあるときnotifyAll()を呼び出すと、 全てのThreadのwait()も解除されることになります。 そこに気をつけてください。 あとは、boolean waitFlag;とか。
お礼
わかりやすく解説していただいてありがとうございました!