我正在阅读有关多线程的内容,当时我阅读了有关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