计算存储字符串”redis”长度,长度为5
2. buf 数组会使用空间预分配的方式申请空间
初始分配的buf空间分为3部分,字符串存储空间,预分配空间,字符串结尾标识符'\0'....=11
3. len字符串长度,值为5
free未使用长度,也就是这里的预分配空间长度,同样为5
sds存储字符串redis后的数据结构
strlen命令
在计算存的字符串值的长度key时,返回sdshdr...命令,在未超过预分配空间时,也只会更新buf数组值,不会做申请空间操作.
3. setbit虽然进行位操作,但也是按字节存储,本质是一样的.可以参考位域....二进制安全,sds能存储任意二进制数据,而不仅仅是可打印字符.
4....数据结构拆分
根据存储数据的大小,记录长度的len,buf空间,将原有的数据结构细分为5种情况,分别为sdshdr5, sdshdr8, sdshdr16, sdshdr32, sdshdr64.对应存储字符串长度分别为