2014-02-13 67 views
0

我正在閱讀有關多線程的內容,當時我閱讀了有關wait()notify方法。我懷疑如果notify()方法在wait()方法之前完成會發生什麼情況。在等待之前通知調用

Wait()方法會再等一等嗎?或之前的通知是否有效進一步移動?

+0

我希望你知道你可以只嘗試。 –

+0

我試了一下,以前的通知工作正常......但仍然證實..我是對的? – user2985842

回答

0

Object#wait()的Javadoc說

造成當前線程等待,直到其他線程調用 java.lang.Object.notify()方法或此對象的java.lang.Object.notifyAll() 方法。

所以,當你調用

someObject.wait(); 

它會等待以下調用

someObject.notify(); // or notifyAll() 
+0

所以,你的意思是以前的通知是有效的 – user2985842

+0

@ user2985842我說'notify()'發生在'wait()'之前對它沒有任何影響。 –

+0

@ user2985842請勿在評論中張貼代碼。 –