BZPOPMIN

用法
BZPOPMIN key [ key ... ] timeout
复杂度
O(log(N)),其中 N 为有序集合中的元素数量。
5.0.0
ACL 类别
@sortedset, @write, @fast, @blocking

BZPOPMIN 是有序集合 ZPOPMIN 原语的阻塞变体。

它是阻塞版本,因为它在所有给定有序集合中都没有可弹出的成员时会阻塞连接。将从第一个非空的有序集合中弹出一个分数最低的成员,检查给定键的顺序与它们给定的顺序一致。

timeout 参数被解释为一个双精度浮点值,指定了最大阻塞秒数。超时时间为零表示可以无限期阻塞。

有关确切语义,请参阅 BLPOP 文档,因为 BZPOPMINBLPOP 完全相同,唯一的区别在于弹出数据的结构。

示例

127.0.0.1:6379> DEL zset1 zset2
(integer) 0
127.0.0.1:6379> ZADD zset1 0 a 1 b 2 c
(integer) 3
127.0.0.1:6379> BZPOPMIN zset1 zset2 0
1) "zset1"
2) "a"
3) "0"

RESP2 回复

以下之一

  • Nil 回复: 当没有元素可弹出且 timeout 超时时。

  • 数组回复: 键名、弹出的成员及其分数。

RESP3 回复

以下之一

  • Null 回复: 当没有元素可弹出且 timeout 超时时。

  • 数组回复: 键名、弹出的成员及其分数。

历史

版本 变更
6.0.0

timeout 被解释为双精度浮点数而非整数。