Redis Brpoplpush 命令


Redis Brpoplpush 命令从列表中弹出一个值,将弹出的元素插入到另外一个列表中并返回它; 如果列表没有元素会阻塞列表直到等待超时或发现可弹出元素为止。

语法

redis Brpoplpush 命令基本语法如下:

  1. redis 127.0.0.1:6379> BRPOPLPUSH LIST1 ANOTHER_LIST TIMEOUT

可用版本

>= 2.0.0

返回值

假如在指定时间内没有任何元素被弹出,则返回一个 nil 和等待时长。 反之,返回一个含有两个元素的列表,第一个元素是被弹出元素的值,第二个元素是等待时长。

实例

  1. # 非空列表
  2.  
  3. redis> BRPOPLPUSH msg reciver 500
  4. "hello moto" # 弹出元素的值
  5. (3.38s) # 等待时长
  6.  
  7. redis> LLEN reciver
  8. (integer) 1
  9.  
  10. redis> LRANGE reciver 0 0
  11. 1) "hello moto"
  12.  
  13.  
  14. # 空列表
  15.  
  16. redis> BRPOPLPUSH msg reciver 1
  17. (nil)
  18. (1.34s)