马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?立即注册
×
redission分布式锁
- @Autowired
- RedissonClient redisson;
- // 获取锁对象,key 是锁的标识
- RLock lock = redisson.getLock("lock_flag");
- try {
- // 尝试获取锁,最多等待100秒,上锁以后10秒自动解锁
- // 无需调用lock.lock(),如果直接这样调用,就是无限等待获取锁
- boolean res = lock.tryLock(100, 10, TimeUnit.SECONDS);
- if (res) {
- try {
- // 成功获取锁,执行你的业务代码
- System.out.println("执行任务");
- } finally {
- // 释放锁
- lock.unlock();
- }
- } else {
- // 获取锁失败
- System.out.println("获取锁失败");
- }
- } catch (InterruptedException e) {
- e.printStackTrace();
- }
复制代码 |