关闭

黑马程序员---多线程wait方法详解(原创)

278人阅读 评论(0) 收藏 举报
---------------------- ASP.Net+Android+IOS开发.Net培训、期待与您交流! ----------------------

通常,多线程之间需要协调工作。例如,浏览器的一个显示图片的线程displayThread想要执行显示图片的任务,必须等待下载线程 downloadThread将该图片下载完毕。如果图片还没有下载完,displayThread可以暂停,当downloadThread完成了任务 后,再通知displayThread“图片准备完毕,可以显示了”,这时,displayThread继续执行。
 以上逻辑简单的说就是:如果条件不满足,则等待。当条件满足时,等待该条件的线程将被唤醒。在Java中,这个机制的实现依赖于wait/notify。等待机制与锁机制是密切关联的。例如:
 synchronized(obj)

 {

while(!condition)

 {

obj.wait();

}

obj.doSomething();

 

 

---------------------- ASP.Net+Android+IOS开发.Net培训、期待与您交流! ----------------------
0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:5405次
    • 积分:244
    • 等级:
    • 排名:千里之外
    • 原创:21篇
    • 转载:0篇
    • 译文:0篇
    • 评论:0条
    文章存档