一、该问题的重现步骤是什么?
1. RedisLockClientImpl.java
2.
@Override
public <T> T lock(String lockName, LockType lockType, long waitTime, long leaseTime, TimeUnit timeUnit, CheckedSupplier<T> supplier) {
try {
boolean result = this.tryLock(lockName, lockType, waitTime, leaseTime, timeUnit);
if (result) {
return supplier.get();
}
} catch (Throwable e) {
throw Exceptions.unchecked(e);
} finally {
this.unLock(lockName, lockType);
}
return null;
}3. 看方法如果锁失败的话,会返回null,这样业务那边只知道是返回的null,这是注解的方式,不是手动调用锁,可以进行下一步业务判断,注解锁不好做下一步判断的,是不是可以改成抛出异常更好一些?
二、你期待的结果是什么?实际看到的又是什么?
三、你正在使用的是什么产品,什么版本?在什么操作系统上?
商业版4.7
四、请提供详细的错误堆栈信息,这很重要。
五、若有更多详细信息,请在下面提供。
扫一扫访问 Blade技术社区 移动端