BLMOVE source destination LEFT|RIGHT LEFT|RIGHT timeout

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 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.

*Return value

Bulk string reply: the element being popped from source and pushed to destination. If timeout is reached, a Null reply is returned.

*Pattern: Reliable queue

Please see the pattern description in the LMOVE documentation.

*Pattern: Circular list

Please see the pattern description in the LMOVE documentation.