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

ReentrantLock源码的一点总结

时间:2019-07-12 21:21:42      阅读:144      评论:0      收藏:0      [点我收藏+]

标签:设置   获得   image   比较   alt   http   lock   mamicode   可重入锁   

ReentrantLock 是可重入锁,可重入锁的意思就是同一个线程可以重复获得该锁。

如何做到可重复获得该锁?计数器实现。

技术图片

第一次加锁,cas比较是不是0,是0设置为1,并设置当前拥有锁的线程;

第二次及后续枷锁,调用acquire方法。

技术图片

在计数器不是0的情况下,就会比较当前线程是不是同一个线程,如果是同一个线程那么就将技术器+1。

这样就完成了一个重入锁了,重点在于判断是否是同一个线程,同一个线程才能重入。

ReentrantLock源码的一点总结

标签:设置   获得   image   比较   alt   http   lock   mamicode   可重入锁   

原文地址:https://www.cnblogs.com/yuxin299/p/11178392.html

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