redisson重入锁上锁失败

public boolean acquire(String lockName) {

//声明key对象

String key = LOCK_TITLE + lockName;

//获取锁对象

RLock mylock = redissonClient.getLock(key);

//加锁,并且设置锁过期时间3秒,防止死锁的产生 uuid+threadId

mylock.lock(3, TimeUnit.SECONDS);

//加锁成功

return true;

}

public void release(String lockName) {

String key = LOCK_TITLE + lockName;

RLock mylock = redissonClient.getLock(key);

mylock.unlock();

}

调用如下

        boolean acquire = distributedRedisLock.acquire(CacheKey.REGISTER_SMS_RECALL);

try {

if (acquire) {

taskExecutor.execute(() -> {

log.info("多线程测试");

});

}

}catch (Exception e) {

log.info("{}", ExceptionUtils.getFullStackTrace(e));

}finally {

distributedRedisLock.release(CacheKey.REGISTER_SMS_RECALL);

}

上锁方法如上,但是使用多线程调用的时候,上锁失败了

Application_Stdout [2021-12-29 11:06:52] [traceid=yPGwkuNz,uid=,uri=/mid/test/test,host=192.168.126.47,ref=,ua=python-requests/2.26.0]  INFO  [http-nio-8089-exec-6] o.n.mid.task.SmsRecallRegisterTask[48] - 多线程测试

Application_Stdout [2021-12-29 11:06:52] [traceid=krfsFsWv,uid=,uri=/mid/test/test,host=192.168.126.47,ref=,ua=python-requests/2.26.0] INFO [http-nio-8089-exec-8] o.n.mid.task.SmsRecallRegisterTask[48] - 多线程测试

Application_Stdout [2021-12-29 11:06:52] [traceid=8c9RU1WK,uid=,uri=/mid/test/test,host=192.168.126.47,ref=,ua=python-requests/2.26.0] INFO [http-nio-8089-exec-10] o.n.mid.task.SmsRecallRegisterTask[48] - 多线程测试

以上是 redisson重入锁上锁失败 的全部内容, 来源链接: utcz.com/p/944140.html

回到顶部