如何锁定现有钥匙?

时间:2019-04-15 21:32:25

标签: c# redis stackexchange.redis

我正在编写一些C#代码以写入Redis服务器。代码是多线程的,因此每当我想对某个key:value对进行更改时,都需要锁定“ key”

我正在使用StackExchange.Redis库。在该库中,接口IDatabase代表redis db,并提供读取/写入redis的方法。它有2种与锁相关的方法:bool LockTake(RedisKey键,RedisValue值,TimeSpan到期,CommandFlags标志= CommandFlags.None); &bool LockRelease(RedisKey键,RedisValue值,CommandFlags标志= CommandFlags.None);

但是,根据这篇文章,{T {3}}

表示LockTake()只能锁定不存在的密钥。

但是我想锁定一个密钥,即使它已经创建,因为多个线程可能会尝试同时更新它。我该如何在C#中做到这一点?

0 个答案:

没有答案