1.redis 命令 Brpop
移出并获取列表的最后一个元素, 如果列表没有元素会阻塞列表直到等待超时或发现可弹出元素为止。
与: BLPOP 相同,只不过 BLPOP 从左边弹出元素,而 BRPOP从右表弹出元素。
句法
BRPOP key [key ...] timeout
可用版本:
2.0.0
时间复杂度:
O(N) 其中 N 是提供的密钥的数量。
ACL 类别:
@write, @list, @slow, @blocking
BRPOP是一个阻塞列表弹出原语。它是阻塞版本,RPOP因为当没有任何元素可以从任何给定列表中弹出时,它会阻塞连接。
从第一个非空列表的尾部弹出一个元素,并按照给定的顺序检查给定的键。
有关确切的语义,请参阅BLPOP 文档,因为BRPOP它与 BLPOP 相同,BLPOP唯一的区别是它从列表的尾部弹出元素而不是从头部弹出。
#返回
数组回复:具体来说:
nil当没有元素可以弹出并且超时过期时的多批量。
一个双元素多块,第一个元素是弹出元素的键的名称,第二个元素是弹出元素的值。
#例子
redis> DEL list1 list2
(integer) 0
redis> RPUSH list1 a b c
(integer) 3
redis> BRPOP list1 list2 0
1) "list1"
2) "c"
#历史
从 Redis 版本 6.0.0 开始:timeout被解释为双精度而不是整数。
#反馈