现在有两个线程,一个线程A正在执行 synchronized(...){ ..... } 中的代码,而另一个线程B通过调用 wait() 让线程A等待,请问A是执行完synchronized中的代码再wait,还是直接就wait
------解决思路----------------------
A要先wait在往后走,才能体现“等B线程跑完了再跑A的任务”
另外请注意:wait是Object中的方法,需要配合notify方法使用。
------解决思路----------------------
* Causes the current thread to wait until another thread invokes the
* {@link java.lang.Object#notify()} method or the
* {@link java.lang.Object#notifyAll()} method for this object.
* In other words, this method behaves exactly as if it simply
* performs the call {@code wait(0)}.
这是JDK关于wait()方法的说明,意思应该是wait方法只能让当前执行它的线程等待。
另一个线程B通过调用 wait() 让线程A等待楼主这句话是什么意思啊?