AQS队列

  1. state关键字是类的volatile全局变量,0为无锁,1为占有,>1为重入次数。
  2. “非公平锁”的实现并不依赖唤醒所有节点,永远只唤醒下一个节点。它的原理是新线程加入时不需要判断AQS队列情况,可以直接参与锁的竞争。

MySQL的索引

  1. Hash表与B+树对比:Hash表的单点查询效率更高,但是面对频繁的范围查找时B+树的性能更突出,因为B+树天生支持范围查找,而Hash却只能全表扫描。

看门狗

  1. 锁未指定过期时间时(但是Rediison有一个默认过期时间),Redisson在后台开启一个定时任务,每隔一段时间向Redis发送一个Lua脚本为锁续期。
  2. 当线程宕机时这个定时任务不复存在,锁就会超时过期。