
Redis设计与实现
为了妹子而奋斗
这个作者很懒,什么都没留下…
展开
-
redis对象之字符串对象
字符串对象有三种编码方式 第一种编码方式int 第二种编码方式raw 第三种编码方式embstr 如果字符串对象保存的是一个字符串值,并且这个字符串值的长度小于等于39个字节,那么字符串对象将使用embstr编码的方式来保存这个值。 使用embstr编码的字符串对象来保存短字符串值有以下好处: embstr编码将创建字符串对象所需的内存分配次数从raw编码的二次降...转载 2018-05-03 21:37:59 · 11994 阅读 · 0 评论 -
Redis之简单动态字符串(SDS)
简单动态字符串SDS(Simple Dynamic String) //SDS数据结构如下 struct sdshdr{ //len用来记录buf数组中已使用字节的数量 //等于SDS所保存字符串的长度 int len; //记录buf数组中未使用字节的数量 int free; //字节数组,用于保存字符串 char buf[]; } ...转载 2018-04-28 10:06:48 · 11846 阅读 · 0 评论 -
Redis之链表
Redis链表包含二个结构体 //链表节点 双端 struct listNode{ struct listNode *prev; struct listNode *next; void *value; } //使用list结构来操作链表,获取链表的一些属性,无需遍历链表 struct list{ //链表头结点 listNode *head; //链表...转载 2018-04-28 10:22:18 · 11686 阅读 · 0 评论