c - redis存储数据的锁机制

标签 c redis locking

亲爱的,我有一个问题,多个 redis-clients 正在访问存储在 redis-server 中的公共(public)结构。

要求如下:-

  1. 如果一个特定的redis-client 正在访问存储在redis-server 中的结构(应该对该结构进行读写操作),其他redis-client 应该不能访问并等待被释放。
  2. 每次其他 redis-client 访问该结构时,他们应该访问更新后的结构。

我怎样才能在 C 代码中加入锁定机制来满足这个要求。 提前致谢。

最佳答案

Redis 提供了以下内容:

1) 使用 Redis 事务和乐观锁定。参见 Redis Transactions

2)或者Lua脚本,在Redis中会自动执行。参见 EVAL

关于c - redis存储数据的锁机制,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42763153/

相关文章:

javascript - 如何向特定用户推送通知 Node + AngularJS + Laravel

c# - 确保字典中值的列表的线程安全操作

c - 为什么很多 BST 函数返回根而不使用双指针?

c - 你如何在 C 中释放一个 2D malloc'd 数组?

c - 如何编译.c.h.so文件?

mysql - Rails + MySQL + Transactions + Locking,如何防止打开事务解锁表?

MySQL 更新并获取行...或者只选择未锁定的行?

c++ - 我的字符串复制函数中这两个 while 循环条件之间的区别

redis - ServiceStack.Redis.Sentinel 用法

spring - java.lang.IllegalArgumentException : IN (1): [IsIn, In]不支持redis查询派生 - Redis