码迷,mamicode.com
首页 > 其他好文 > 详细

对象的notify方法的含义和对象锁释放的三种情况

时间:2017-10-10 13:11:23      阅读:257      评论:0      收藏:0      [点我收藏+]

标签:导致   ble   post   pos   也会   通知   获取   退出   share   

1,notify的含义    
(1)notify一次只随机通知一个线程进行唤醒
(2)在执行了notify方法之后,当前线程不会马上释放该对象锁,呈wait状态的线程也不能马上获得该对象锁,
要等到执行notify方法的线程将程序执行完 ,也就是退出sychronized代码块后,当前线程才会释放锁,
而呈wait状态所在的线程才可以获取该对象锁。
2,对象锁释放的三种情况
 
序号 场景
1 执行完同步代码块就会释放对象的锁
2 在执行同步代码块的过程中,遇到异常而导致线程终止,锁也会被释放
3 在执行同步代码块的过程中,执行了锁所属对象的wait方法,这个线程会释放对象锁,而此线程对象会进入线程等待池中,等待被唤醒
 
 

对象的notify方法的含义和对象锁释放的三种情况

标签:导致   ble   post   pos   也会   通知   获取   退出   share   

原文地址:http://www.cnblogs.com/toSeeMyDream/p/7644739.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!