GETSET 已废弃

用法
GETSET key value
复杂度
O(1)
始于
1.0.0
ACL 类别
@string, @write, @fast

原子性地将 key 设置为 value 并返回存储在 key 处的旧值。当 key 存在但未存储字符串值时,返回错误。在成功的 SET 操作后,任何与键关联的旧生存时间都将被丢弃。

设计模式

GETSET 可以与 INCR 一起使用,以实现原子性重置计数。例如:一个进程可以在每次事件发生时对键 mycounter 调用 INCR,但我们有时需要获取计数器的值并将其原子性地重置为零。这可以通过使用 GETSET mycounter "0" 来完成。

127.0.0.1:6379> INCR mycounter
(integer) 1
127.0.0.1:6379> GETSET mycounter "0"
"1"
127.0.0.1:6379> GET mycounter
"0"

示例

127.0.0.1:6379> SET mykey "Hello"
OK
127.0.0.1:6379> GETSET mykey "World"
"Hello"
127.0.0.1:6379> GET mykey
"World"

RESP2 回复

以下之一

RESP3 回复

以下之一