「Redis」字符串
时间:2022-07-26
本文章向大家介绍「Redis」字符串,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
原文链接:https://www.changxuan.top/?p=1109
简介
Redis 中自定义的字符串结构。
字符串是 Redis 中最常用的一种数据类型,在 Redis 中专门封装了一个字符串结构体——简单动态字符串(Simple Dynamic String, SDS)。其结构体如下:
struct sdshdr {
// 记录 buf 数组中已使用字节的数量既 SDS 中所保存字符串的长度
int len;
// 记录 buf 数组中未使用字节的数量
int free;
// 字节数组,用于保存字符串。
char buf[];
}
当 len
的值为 8 时,表示在 buf
数组中保存了一个 8 字节长的字符串;当 free
的值为 2 时,表示在 buf
数组中还有两个字节的空间未使用。如果为 0 ,则表示当前 buf
数组的空间已经全部分配完毕;buf
则是一个 char
类型的数组。SDS 遵循了C字符串以空字符结尾的惯例,即存储在 buf
中的字符串末尾都会紧跟一个空字符