
锁
巴哥面试
一个为面试的中年油腻程序员!
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
ReentrantLock与Synchronized的区别
目录 可重入性 锁实现 性能区别 功能区别 ReentrantLock独有能力 ReentrantLock实现原理 可重入性 都是可重入锁,都对当前线程可重入;线程每进入一次计数器+1,直到计数器下降为0才能释放锁; 锁实现 Synchronized依赖jvm实现(操作系统实现),ReentrantLock是JDK实现(代码实现) 性能区别 Synchronized优化后,...转载 2019-12-30 11:05:34 · 303 阅读 · 0 评论 -
可重入锁与不可重入锁
不可重入锁 只判断这个锁有没有被锁上,只要被锁上申请锁的线程都会被要求等待 可重入锁 不仅判断锁有没有被锁上,还会判断锁是谁锁上的,当是自己锁上的时候,那么他依旧可以再次访问临界资源,并把加锁次数加一。 设计了加锁次数,以在解锁的时候,可以确保所有加锁的过程都解锁了,其他线程才能访问。不然没有加锁的参考值,也就不知道什么时候解锁?解锁多少次?才能保证本线程已经访问完临界资源了可以唤醒其他线...转载 2019-12-30 10:34:31 · 132 阅读 · 0 评论