BLMOVE
Syntax
BLMOVE source destination <LEFT | RIGHT> <LEFT | RIGHT> timeout
- Available since:
- 6.2.0
- Time complexity:
- O(1)
- ACL categories:
-
@write,@list,@slow,@blocking,
BLMOVE is the blocking variant of LMOVE.
When source contains elements, this command behaves exactly like LMOVE.
When used inside a MULTI/EXEC block, this command behaves exactly like LMOVE.
When source is empty, Redis will block the connection until another client
pushes to it or until timeout (a double value specifying the maximum number of seconds to block) is reached.
A timeout of zero can be used to block indefinitely.
This command comes in place of the now deprecated BRPOPLPUSH. Doing
BLMOVE RIGHT LEFT is equivalent.
See LMOVE for more information.
Pattern: Reliable queue
Please see the pattern description in the LMOVE documentation.
Pattern: Circular list
Please see the pattern description in the LMOVE documentation.
RESP2 Reply
One of the following:
- Bulk string reply: the element being popped from the source and pushed to the destination.
- Nil reply: the operation timed-out
RESP3 Reply
One of the following:
- Bulk string reply: the element being popped from the source and pushed to the destination.
- Null reply: the operation timed-out