我正在閱讀有關多線程的內容,當時我閱讀了有關wait()
和notify
方法。我懷疑如果notify()
方法在wait()
方法之前完成會發生什麼情況。在等待之前通知調用
Wait()
方法會再等一等嗎?或之前的通知是否有效進一步移動?
我正在閱讀有關多線程的內容,當時我閱讀了有關wait()
和notify
方法。我懷疑如果notify()
方法在wait()
方法之前完成會發生什麼情況。在等待之前通知調用
Wait()
方法會再等一等嗎?或之前的通知是否有效進一步移動?
爲Object#wait()
的Javadoc說
造成當前線程等待,直到其他線程調用
java.lang.Object.notify()
方法或此對象的java.lang.Object.notifyAll()
方法。
所以,當你調用
someObject.wait();
它會等待以下調用
someObject.notify(); // or notifyAll()
所以,你的意思是以前的通知是有效的 – user2985842
@ user2985842我說'notify()'發生在'wait()'之前對它沒有任何影響。 –
@ user2985842請勿在評論中張貼代碼。 –
我希望你知道你可以只嘗試。 –
我試了一下,以前的通知工作正常......但仍然證實..我是對的? – user2985842