2009年2月26日 星期四

第234題

Given:

foo and bar are public references available to many other threads, foo refers to a Thread and bar is an Object.
The thread foo is currently executing bar.wait().

From another thread, what provides the most reliable way to ensure that foo will stop executing wait()?

A. foo.notify();
B. bar.notify();
C. foo.notifyAll();
D. Thread.notify();
E. bar.notifyAll();
F. Object.notify();

答案:E

參考:13-5 執行緒的互動處理
------------------------------------------------------
foo and bar是二個物件,而foo 是一個Thread 的物件,而bar 為該bar Thread 要存取的物件
目前 thread foo正在執行bar.wait(),
另一條thread 如要喚醒的話,有何方式保證foo will stop executing wait()
bar.notifyAll();喚醒正在等待bar物作的所有thread
bar.notify();隨機喚醒正在等待bar物作的一條thread

沒有留言:

張貼留言