线程间通信:等待/唤醒机制

操作共享资源,但是线程的任务不一样

wait():该方法让线程进入冻结状态,释放了CPU执行权与执行资格,同时释放了锁,线程被储存在线程池中;
 
notify():唤醒线程池中的任意一个线程;
notifyAll():唤醒线程池中的所有线程。

 

这些方法必须使用在同步当中,因为是用来操作同步锁上的线程的状态的。

使用这些方法,必须标示它们所属的锁对象,标示方式就是  

 锁对象.wait();
 锁对象.notify();
 锁对象.notifyAll();

 

相同锁的notify(可以唤醒相同锁的wait()。

必须明确锁,否则会比较乱。

posted @ 2018-01-09 12:17  小菜鸟321  阅读(192)  评论(0)    收藏  举报