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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 拾起落叶 中级黑马   /  2015-7-10 11:55  /  490 人查看  /  3 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

1wait(),notify(),notifyAll(),用来操作线程为什么定义在了Object类中?
      a,这些方法存在与同步中。
      b,使用这些方法时必须要标识所属的同步的锁。同一个锁上wait的线程,只可以被同一个锁上的notify唤醒。
      c,锁可以是任意对象,所以任意对象调用的方法一定定义Object类中。
2wait(),sleep()有什么区别?
       wait():释放cpu执行权,释放锁。
       sleep():释放cpu执行权,不释放锁。
3、为甚么要定义notifyAll?
        因为在需要唤醒对方线程时。如果只用notify,容易出现只唤醒本方线程的情况。导致程序中的所以线程都等待。

3 个回复

倒序浏览
分享快乐,赞一个
回复 使用道具 举报
分享快乐
回复 使用道具 举报
同来看看结果
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马