Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/redis/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 有没有空闲TTL的锁/信号量_Java_Redis_Redisson - Fatal编程技术网

Java 有没有空闲TTL的锁/信号量

Java 有没有空闲TTL的锁/信号量,java,redis,redisson,Java,Redis,Redisson,我有以下情况 为了防止并发资源访问,我们使用rpermitexpirablesmaphore作为锁。 从Expirable中,我希望Redis中的“lock key”会在一些TTL之后被删除。但不幸的是,事实并非如此 例如: A尝试获取锁X A使用TTL 1m创建(因为它以前不存在)锁X A获取锁X B尝试获取锁X B等待A释放锁X B获取锁X 一分钟过去了 Redis删除锁(键)X 如果有新的尝试获取lockX,上述场景将从头开始 Redisson中是否有某种锁/信号量提供这种行为 另外,

我有以下情况

为了防止并发资源访问,我们使用
rpermitexpirablesmaphore
作为锁。 从
Expirable
中,我希望Redis中的“lock key”会在一些TTL之后被删除。但不幸的是,事实并非如此

例如:

  • A尝试获取锁X
  • A使用TTL 1m创建(因为它以前不存在)锁X
  • A获取锁X
  • B尝试获取锁X
  • B等待A释放锁X
  • B获取锁X
  • 一分钟过去了
  • Redis删除锁(键)X
如果有新的尝试获取lockX,上述场景将从头开始

Redisson中是否有某种锁/信号量提供这种行为


另外,我不能手动删除信号量,因为如果有其他客户端正在等待释放锁,那么最终会出现一个例外,即信号量不存在(当然,因为它已被另一个客户端删除)。因此,我们有泄漏的密钥(由于访问的资源是暂时的,所以将来不会使用该密钥)。

该问题已在3.12.0版中修复。
问题:。

提交:

您的意思是许可证预期不会过期吗?您好@NikitaKoksharov您已经在范围内修复了此问题(如果)