BRPOP key [key ...] timeout
BRPOP
是一个阻塞的列表弹出原语。 它是 RPOP 的阻塞版本,因为这个命令会在给定list无法弹出任何元素的时候阻塞连接。 该命令会按照给出的 key 顺序查看 list,并在找到的第一个非空 list 的尾部弹出一个元素。
请在 BLPOP 文档 中查看该命令的准确语义,因为 BRPOP
和 BLPOP 基本是完全一样的,除了它们一个是从尾部弹出元素,而另一个是从头部弹出元素。
返回值
多批量回复(multi-bulk-reply): 具体来说:
- 当没有元素可以被弹出时返回一个
nil
的多批量值,并且 timeout 过期。 - 当有元素弹出时会返回一个双元素的多批量值,其中第一个元素是弹出元素的
key
,第二个元素是value
。
例子:
redis> DEL list1 list2
(integer) 0
redis> RPUSH list1 a b c
(integer) 3
redis> BRPOP list1 list2 0
1) "list1"
2) "c"
相关参考链接
Lists相关命令:
命令组 | 命令 |
Lists(列表) | BLPOP; BRPOP; BRPOPLPUSH; LINDEX; LINSERT; LLEN; LPOP; LPUSH; LPUSHX; LRANGE; LREM; LSET; LTRIM; RPOP; RPOPLPUSH; RPUSH; RPUSHX |
全部命令组:Keys(键)、Strings(字符串)、Hashes(哈希表)、Lists(列表)、Sets(集合)、Sorted Sets(有序集合)、Pub/Sub(发布/订阅)、Scripting(脚本)、Server(服务器)、Transactions(事物),Geo(地理位置)、Cluster(集群)、Connection(连接)、Streams(流)、HyperLogLog。
回到总目录:Redis命令参考手册(总目录)