1、概念
多线程同时作用在同一个资源的不同任务上,并且多个任务之间是存在相互依赖关系,A任务没有执行完成B任务就不能执行,B任务没有执行完成A任务就不能执行,这个时候就需要用到线程之间的通信等待唤醒机制,线程1将A任务完成了就通知线程2执行B任务自己进入等待状态,反过来也是如此。
2、前提条件
多线程必须作用在同一对象的不同同步方法上。
3、操作方法
wait:释放锁对象,释放cpu使用权。
notify:唤醒被wait的线程,一次只唤醒一个而且是任意的。
注意:调用wait和notify的锁对象必须是同一个。