源码剖析
文章平均质量分 91
架构随笔
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
PollingWatchService原理剖析
PollingWatchServiceAbstractWatchService watchService = new PollingWatchService();PollingWatchService() { // TBD: Make the number of threads configurable scheduledExecutor = Executors.newSingleThreadScheduledExecutor();}初始化时会初始化一个单线程池。接下来,向该w原创 2020-06-19 16:23:54 · 616 阅读 · 1 评论 -
基于Redis的分布式锁RedissonLock原理剖析
RedissonLock#subscribe订阅锁释放事件,并阻塞等待锁释放,有效的解决了无效的锁申请浪费资源的问题:基于信号量,当锁被其它资源占用时,当前线程通过 Redis 的 channel 订阅锁的释放事件,一旦锁释放会发消息通知待等待的线程进行竞争.1、当 this.await 返回 false,说明等待时间已经超出获取锁最大等待时间,取消订阅并返回获取锁失败.2、当 this.await 返回 true,进入循环尝试获取锁.protected final LockPubSub pubS原创 2020-06-21 13:17:33 · 878 阅读 · 0 评论
分享