0
点赞
收藏
分享

微信扫一扫

redis学习分布式锁(一)setnx ,set ,setex,getset的区别

Xin_So 2022-07-27 阅读 81


一.redis的相关知识

1.SET key value

含义:

          将字符串值 value 关联到 key 。

          如果 key 已经持有其他值, SET 就覆写旧值,无视类型

实例:

redis学习分布式锁(一)setnx ,set ,setex,getset的区别_redis

 

2.SETEX key seconds value

含义:

           将值 value 关联到 key ,并将 key 的生存时间设为 seconds (以秒为单位)。

           如果 key 已经存在, SETEX 命令将覆写旧值。

返回值:

           设置成功时返回 OK 。

           当 seconds 参数不合法时,返回一个错误。

 

 

3.SETNX key value

含义:

           将 key 的值设为 value ,当且仅当 key 不存在。

           若给定的 key 已经存在,则 SETNX 不做任何动作。

           SETNX 是『SET if Not eXists』(如果不存在,则 SET)的简写。

返回值:

           设置成功,返回 1 。

           设置失败,返回 0 。

实例:

redis学习分布式锁(一)setnx ,set ,setex,getset的区别_redis_02

 

4.GETSET key value

含义:

          将给定 key 的值设为 value ,并返回 key 的旧值(old value)。

          当 key 存在但不是字符串类型时,返回一个错误。

返回值:

           返回给定 key 的旧值。

           当 key 没有旧值时,也即是, key 不存在时,返回 nil 。

redis学习分布式锁(一)setnx ,set ,setex,getset的区别_覆写_03

举报

相关推荐

0 条评论