Redis 列表(list) 命令

Redis brpop 命令 是一个阻塞的列表弹出原语。 它是 RPOP 的阻塞版本,因为这个命令会在给定list无法弹出任何元素的时候阻塞连接。 该命令会按照给出的 key 顺序查看 list,并在找到的第一个非空 list 的尾部弹出一个元素。

语法:

brpop list1 list2 .. listn timeout 

可用版本

>=2.0.0.

返回值

返回存储在 key 或 nil 的元素的值

返回值类型

字符串

示例:redis brpop

127.0.0.1:6379> rpush mycolor1 r g b
(integer) 3
127.0.0.1:6379> rpush mycolor2 y o p
(integer) 3
127.0.0.1:6379> brpop mycolor mycolor1 mycolor2 30
1) "mycolor1"
2) "b"
127.0.0.1:6379> brpop mycolor mycolor1 mycolor2 30
1) "mycolor1"
2) "g"
127.0.0.1:6379> brpop mycolor mycolor1 mycolor2 30
1) "mycolor1"
2) "r"
127.0.0.1:6379> brpop mycolor mycolor1 mycolor2 30
1) "mycolor2"
2) "p"
127.0.0.1:6379> brpop mycolor mycolor1 mycolor2 30
1) "mycolor2"
2) "o"
127.0.0.1:6379> brpop mycolor mycolor1 mycolor2 30
1) "mycolor2"
2) "y"
127.0.0.1:6379> brpop mycolor mycolor1 mycolor2 30

(nil)
(30.04s) 

以上示例将阻止客户端 30 秒执行任何命令。如果指定的键列表中有任何数据,则在 30 秒后返回,否则返回 nil 值。