A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

© WilliCicci 中级黑马   /  2015-7-21 00:25  /  259 人查看  /  1 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

多个线程在处理统一资源,但是任务却不同,这时候就需要线程间通信。
等待/唤醒机制涉及的方法:
1. wait():让线程处于冻结状态,被wait的线程会被存储到线程池中。
2. notify():唤醒线程池中的一个线程(任何一个都有可能)。
3. notifyAll():唤醒线程池中的所有线程。
P.S.
1、这些方法都必须定义在同步中,因为这些方法是用于操作线程状态的方法。
2、必须要明确到底操作的是哪个锁上的线程!
3、wait和sleep区别?
1)wait可以指定时间也可以不指定。sleep必须指定时间。
2)在同步中时,对CPU的执行权和锁的处理不同。
wait:释放执行权,释放锁。
sleep:释放执行权,不释放锁。

1 个回复

倒序浏览
支持一下!!!
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马