对redis的一次回眸之list(二)

list

基本命令:lpush key arg…

注意顺序:

127.0.0.1:6379> lpush l2 a b c d
(integer) 4
127.0.0.1:6379> LPOP l2
"d"
127.0.0.1:6379> LPOP l2 3
1) "c"
2) "b"
3) "a"
127.0.0.1:6379> LPOP l2 3
(nil)

基本命令

lpush 往list添加一个元素
lpop 从list取出一个元素,该元素会从list删除
lrange 查看某个范围的元素,不会从list中删除该元素
lindex 查看list中某个下标的元素,不会从list中删除该元素
lset 给list某个下标的元素设置值
lrem key count element 移除count个元素,如果count是正数,从左往右一次删除元素,负数相反,没有rrem命令
linsert key before|after privot element 在某个元素前|后插入元素
blpop key [key …] timeout 支持超时时间的,阻塞式去拿list内容

数据结构

lpush、lpop

实现栈

lpush、rpop

实现队列

lindex

实现数组

linsert

实现链表

blpop

实现FIFO的阻塞队列、同时支持单消费者的消息订阅发布模式

场景

  1. 实现单消费者的消息队列。一个线程负责放入任务、另外一个线程轮询取出任务
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值