加锁
-
一文带你弄懂 MySQL 的加锁规则!
在这些文章中,我们大致了解了一些加锁的情况。但实际上 MySQL 的加锁规则是怎样的,我还不是特别清楚。所以今天我们就来深入了解下 MySQL 的加锁规则。
-
干货,深入剖析ReentrantLock源码,推荐收藏
看完了ReentrantLock的所有源码,是不是觉得ReentrantLock很简单。由于加锁流程的编排工作已经在父类AQS中实现,子类只需要实现具体的加锁逻辑即可。
-
重大发现,AQS加锁机制竟然跟Synchronized有惊人的相似
AQS跟Synchronized的加锁流程是一样的,都是通过同步队列和条件队列实现的,阻塞状态的线程被放到同步队列中,等待状态的线程被放到条件队列中,从条件队列唤醒的线程又被转移到同步队列末尾,一块竞争锁。
-
重磅出击,20张图带你彻底了解ReentrantLock加锁解锁的原理
在使用阻塞等待获取锁的方式中,必须在try代码块之外,并且在加锁方法与try代码块之间没有任何可能抛出异常的方法调用,避免加锁成功后,在finally中无法解锁。
-
冷门知识点:进程间通信如何加锁?
进程间通信有一种[共享内存]方式,大家有没有想过,这种通信方式中如何解决数据竞争问题?我们可能自然而然的就会想到用锁。但我们平时使用的锁都是用于解决线程间数据竞争问题,貌似没有看到过它用在进程中,那怎么办?