redis学习笔记(9)---对象robject

Redis中的对象robject是基于基本数据结构创建的,用于实现key-value对。robject包含类型、编码方式、访问时间戳、引用计数和数据指针。类型有5种,如字符串、链表等,编码方式有9种,如EMBSTR和RAW。不同命令(如set、get、hset、hget)会导致不同类型的robject,进而选择不同的编码策略。
摘要由CSDN通过智能技术生成

robject

  之前对redis基本的数据结构分别进行了简单的介绍,包括字符串、链表、哈希表、整数集合、压缩列表、压缩字典等,但是redis并不是直接使用这些数据结构来实现key-value对数据库的,而是基于这些数据结构为每一个对象创建一个对象robject。robject对象再根据数据类型,来选择合适的底层数据结构来存储数据。

robject的定义如下:  

typedef struct redisObject {
    unsigned type:4;
    unsigned encoding:4;
    unsigned lru:REDIS_LRU_BITS; /* lru time */
    int refcount;
    void *ptr;
} robj;
  • type:4bit,对象的类型
  • encoding:4bit,对象的编码方
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值