redis分布式锁

实例1:

//获取 RLock 实例
        RLock lock = redisson.getLock(Constants.STANDARD_DETAIL_LOCK_KEY_PREFIX + fo.getId());
        boolean tryLock = false;
        try {
            //会立即获取锁,如果在调用方法时刻,锁没有被其他线程占用,将获取到锁并返回true
            tryLock = lock.tryLock(Constants.STANDARD_DETAIL_LOCK_KEY_SURVIVAL, TimeUnit.SECONDS);
        } catch (InterruptedException e) {
            e.printStackTrace();
        }

        //如果为false锁被其他用户占用,不能编辑
        if (!tryLock) {
            return setResultError("当前资源有其他用户正在编辑,请稍后!");
        }
View Code

 关闭资源

finally {
            if (lock != null) {
                lock.unlock();
            }
        }
View Code
原文地址:https://www.cnblogs.com/snow-wolf-1/p/12877590.html