随笔分类 -  Redis

摘要:因为redis是用c写的,c中没有自带的map,所以redis自己实现了map,来看一下redis是怎么实现的。1、redis字典基本数据类型redis是用哈希表作为字典的底层实现,dictht是哈希表的定义:typedef struct dictht { // 哈希表节点指针数组(俗称桶,b... 阅读全文
posted @ 2015-05-25 22:30 丶Blank 阅读(921) 评论(0) 推荐(0)
摘要:首先,sds即simple dynamic string,redis实现这个的时候使用了一个技巧,并且C99将其收录为标准,即柔性数组成员(flexible array member),参考资料见这里。柔性数组成员不占用结构体的空间,只作为一个符号地址存在,而且必须是结构体的最后一个成员。柔性数组成... 阅读全文
posted @ 2015-05-17 17:45 丶Blank 阅读(919) 评论(0) 推荐(0)