本文参考:BLPOP
BLPOP key[key …] timeout:BLPOP是列表的阻塞式(blocking)弹出原语。是LPOP命令的阻塞版本,当给定列表内没有任何元素可供弹出的时候,连接将会被BLPOP 命令阻塞,直到等待超时,会有可弹出元素为止。
当给定多个key参数的时候,按参数key的先后顺序依次检查各个列表,弹出第一个非空列表的头元素。
0
如果所有给定的key都为空列表会不存在,那么BLPOP命令将阻塞连接,直到等待超时会其他客户端调用LPUSH或RPUSH命令为列表添加元素。
相同的key可以被多个客户端阻塞。客户端被放进一个队列中,按照先进先出的方式,为key执行BLPOP命令。
一个被包裹在MULTI/EXEC块内的BLPOP命令,行为变现的和LPOP一样,对空列表返回nil,非空列表弹出对应元素。
BRPOP
BRPOP key[key …] timeout:BRPOP是列表的阻塞式弹出原语。他是RPOP命令的阻塞式。和BLPOP使用基本相同。
BRPOPLPUSH
BRPOPLPUSH sourcedestination timeout:BRPOPLPUSH是RPOPLPUSH的阻塞版本,当给定列表source不为空时,,两者表现相同。当列表为空时,BRPOPLPUSH命令将阻塞连接,知道等待超时,会有其他客户端执行push操作。
返回值:在指定时间没有任何元素被弹出,则返回一个nil和等待时长。反之,返回一个两个元素列表,包含弹出元素的值和等待时长。
LINDEX
LINDEX key index:返回列表key中,下表为index的元素。
返回值:列表中下标为index的元素。如果index参数的值不在列表的区间范围内,返回nil。
LINSERT
LINSERT key BEFORE|AFTERpivot value:将值value插入到列表key当中,位于值pivot之前或之后。
当pivot不存在时,不执行任何操作。当key不存在时,不执行任何操作。
当key不是列表类型,返回一个错误。
返回值:执行成功,返回操作后的列表长度。如果找不到pivot,返回-1。key不存在,返回0。
LLEN
LLEN key:返回列表的长度,如果列表不存在返回0.如果key不是列表类型,返回一个错误。
返回值:列表长度。
LPOP
LPOP key:移除并返回列表key的头元素。
返回值:列表的头元素。当key不存在时,返回nil。
LPUSH
LPUSH key value [value …]:将一个或多个value插入到列表的表头。如果有多个value。那么value值按照从左到右的顺序依次插入。
如果key不存在,那么一个空列表会被创建并执行LPUSH操作。
返回值:执行后列表的长度。
LPUSHX
LPUSHX key value:将值value插入到列表的表头,当且仅当key存在并且是一个列表。与LPUSH命令相反,当key不存在时,LPUSHX命令什么也不做。
返回值:LPUSHX命令执行后,表的长度。
LRANGE
LRANGE key start stop:返回列表区间内元素,区间偏移量以start stop指定。start stop闭区间内的元素会返回,比如 0 10 返回11个元素。
LREM
LREM key count value:根据参数count的值,移除列表中与参数value相等的元素。
count大于0,从表头移除。
count小于0,从表尾移除。
count等于0,移除所有与value相等的值。
返回值:被移除的元素的数量。
LSET
LSET key index value:将列表key下标index的元素值设为value。
返回值:操作成功返回ok,否则返回错误信息。
LTRIM
LTRIM key start stop:对一个列表进行修剪操作,让列表只保留指定区域内的元素,不在区域内的元素将被删除。
返回值:命令执行成功,返回ok。
RPOP
RPOP key:移除并返回列表的尾元素。
返回值:列表的尾元素。
RPOPLPUSH
RPOPLPUSH source destination:在一个原子时间内执行:1)将列表source中的最后一个元素弹出,并返回给客户端。将source元素弹出的元素插入列表destination,作为destination列表的头元素。
返回值:被弹出的元素。
RPUSH
RPUSH key value[value .. ]:将一个或多个值value插入到列表key的表尾。如果多个key,那么按照从左到右的顺序插入到列表。
返回值:执行操作后,表的长度。
RPUSHX
RPUSHX key value:将值插入列表key的表尾,当且仅当key存在并且是一个列表。当key不存在时,不进行任何操作。
返回值:表的长度。
成功是奋斗的结果,而奋斗是成功的必经之路。