首页 > 代码库 > ReentrantLock获取、释放锁的过程
ReentrantLock获取、释放锁的过程
看了篇文章,觉得分析得很透彻,其后总结的很到位,地址:http://www.iteye.com/topic/1083832
把获取与释放操作串在一起在简单看一下:
- 获取锁的时候将当前线程放入同步队列,并且将前一个节点的状态置为signal状态,然后阻塞
- 当这个节点的前一个节点成功获取到锁,前一个节点就成了整个同步队列的head。
- 当前一个节点释放锁的时候,它就唤醒当前线程的这个节点,然后当前线程的节点就可以成功获取到锁了
- 这个时候它就到整个队列的头部了,然后release操作的时候又可以唤醒下一个。
ReentrantLock获取、释放锁的过程
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。