Redis学习笔记(三)列表进阶
RPOPLPUSH source destination(弹出source列表最右端的元素,并推入destination的最左端,同时返回这个元素)
BRPOPLPUSH source destinaton timeout(弹出source列表最右端的元素,并推入destination的最左端,同时返回这个元素;如果source为空,则在timeout秒之内阻塞并等待可弹出元素
)
BLPOP/BRPOP key1 [key2...] timeout(从给定的列表中第一个非空列表弹出最左/右端元素;如果均未空列表,则在timeout秒之内阻塞并等待可弹出元素出现)
root@localhost:~# redis-cli 127.0.0.1:6379> rpush l1 i1 i2 i3 (integer) 3 127.0.0.1:6379> rpoplpush l1 l2 "i3" 127.0.0.1:6379> lrange l1 0 -1 1) "i1" 2) "i2" 127.0.0.1:6379> lrange l2 0 -1 1) "i3" 127.0.0.1:6379> brpoplpush l2 l1 10 "i3" 127.0.0.1:6379> brpoplpush l2 l1 10 (nil) (10.05s) 127.0.0.1:6379> blpop l1 l2 3 1) "l1" 2) "i3" 127.0.0.1:6379> blpop l1 l2 3 1) "l1" 2) "i1" 127.0.0.1:6379> blpop l1 l2 3 1) "l1" 2) "i2" 127.0.0.1:6379> blpop l1 l2 3 (nil) (3.15s)