redisson 非公平锁完整流程
2021-05-18 11:42:27 2 举报
展示redisson锁的流程
作者其他创作
大纲/内容
RedissonLockEntry
1.2线程A获得锁
3.线程A解锁
2.1.1.1 执行加锁lua脚本
4.1.1.1.3取消广播的订阅
4.1.1.1.2 加锁成功
5.线程B解锁
3.1.1.2 解锁成功
5.2线程A已解锁
2.1.1.4.1 执行加锁lua脚本
2.1.1.3.2 订阅成功
LockPubSub
3.1.1 unlockAsync
1.1.1.1 执行加锁lua脚本
5.1.1.1 执行解锁lua脚本
RedissonClient
1.1 getLock或tryLock加锁
5.1 unlock解锁
3.2线程A已解锁
RedissonLock
2.线程B加锁
2.1.1.3 订阅解锁广播消息
3.1 unlock解锁
4.监听到线程A的解锁广播
1.1.1.2 加锁成功
4.1.1.14 线程B获得锁
4.1.1.1.1 执行加锁lua脚本
5.1.1.2 解锁成功
4.1 释放信号量
2.1 getLock或tryLock加锁
3.1.1.1 执行解锁lua脚本
4.1.1 线程B解除阻塞
解锁lua会广播解锁消息
5.1.1 unlockAsync
CommandBatchService
2.1.1.3.1 创建信号量
1.线程A加锁
0 条评论
下一页