首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在获取重发分布式锁的同时,是否可以根据锁键将对象存储在redis中

在获取重发分布式锁的同时,是否可以根据锁键将对象存储在redis中
EN

Stack Overflow用户
提问于 2021-10-21 18:11:02
回答 1查看 266关注 0票数 1

我们使用redisson的分布式锁来避免分布式环境中的并发问题,但是在获取锁的同时,我也想保存一些元数据,比如userId (随机UUID),以知道谁获得了锁,,但意外情况是,我不能将userId作为密钥的一部分。

因此,如果我们可以在redis分布式锁中存储一些带有锁键的自定义元数据,或者如果有任何类似的结果,请帮助我。

代码语言:javascript
运行
复制
 RLock lock = redisson.getFairLock("anyLock");//if we can store some custom data with the lock key.
lock.lock();
try {
  ...
} catch {
  lock.unlock();
}
EN

回答 1

Stack Overflow用户

发布于 2022-09-17 05:56:18

您可以使用绑定到Map条目的锁。

代码语言:javascript
运行
复制
RMap map = redisson.getMap("myMap");
RLock lock = map.getLock("key");
lock.lock();
try {
  map.put("key", value);
} catch {
  lock.unlock();
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69666858

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档