有书共读:《Redis设计与实现》第二章读书笔记

有书共读:《Redis设计与实现》第二章读书笔记
第2章:简单动态字符串

     本章主要讲的是Redis只会使用C字符串作为字面量,在大多数情况下,Redis使用SDS(Simple Dynamic String,简单动态字符串)作为字符串表示。
     每个sds.h/sdshdr结构表示一个SDS值:
    struct sdshdr{
   int len;//表示buf数组中已使用字节的数量=SDS所保存字符串的长度
   int free;//记录buf数组中未使用字节的数量
   char buf[];//字节数组,用于保存字符串
 };
   比起C字符串,SDS具有以下优点:
   1)常数复杂度获取字符串长度。
   2)杜绝缓冲区溢出。
   3)减少修改字符串长度时所需的内存重分配次数。
   4)二进制安全。
   5)兼容部分C字符串函数。

#设计#
全部评论

相关推荐

11-14 16:13
已编辑
重庆科技大学 测试工程师
Amazarashi66:不进帖子我都知道🐮❤️网什么含金量
点赞 评论 收藏
分享
11-08 13:58
门头沟学院 Java
程序员小白条:竟然是蓝桥杯人才doge,还要花钱申领的offer,这么好的公司哪里去找
点赞 评论 收藏
分享
点赞 收藏 评论
分享
牛客网
牛客企业服务