等待/通知<br><b><font color="#64b5f6">经典范例</font></b>
使用wait()、notify()和notifyAll()时需要先对调用对象加锁
调用wait()方法后,线程状态由RUNNING变为WAITING,并将当前线程放置到对象的等待队列
notify()或notifyAll()方法调用后,等待线程依旧不会从wait()返回,需要调用notify()或notifyAll的线程释放锁之后,等待的线程 才有机会从wait()返回。
notify()方法将等待队列中的一个等待线程从等待队列 中移到同步队列中,而notifyAll()方法将等待队列中所有的线程全部移到同步队列,被移动的线程状态由WAITING变为BLOCKING .
从wait()方法返回的前提 是获得了调用对象的锁