BZPOPMAX
语法
BZPOPMAX key [key ...] timeout
- 可用版本
- Redis 开源版 5.0.0
- 时间复杂度
- O(log(N)),其中 N 为有序集合中的元素数量。
- ACL 类别
-
@write
,@sortedset
,@fast
,@blocking
,
BZPOPMAX
是有序集合原始命令 ZPOPMAX
的阻塞变体。
它是阻塞版本,因为当给定的有序集合中没有成员可供弹出时,它会阻塞连接。将从第一个非空的有序集合中弹出一个分数最高的成员,按照给定键的顺序进行检查。
timeout
参数被解释为双精度浮点值,指定了最大阻塞秒数。超时时间为零表示无限期阻塞。
请参阅 BZPOPMIN 文档了解确切的语义,因为 BZPOPMAX
与 BZPOPMIN
完全相同,唯一的区别是它弹出分数最高的成员而不是分数最低的成员。
示例
redis> DEL zset1 zset2
(integer) 0
redis> ZADD zset1 0 a 1 b 2 c
(integer) 3
redis> BZPOPMAX zset1 zset2 0
1) "zset1"
2) "c"
3) "2"
RESP2 回复
以下之一
RESP3 回复
以下之一
历史
- 从 Redis 6.0.0 版本开始:
timeout
被解释为双精度浮点数而不是整数。