6.1
整数集合(intset)是Redis用于保存整数值的集合抽象数据结构,它可以保存类型为int16_t、int32_t、int64_t的整数值,并且无重复元素。
每个intset.h/intset结构表示一个整数集合:
<span style="font-size:18px;">typedef struct intset {
uint32_t encoding; // 编码方式
uint32_t length; // 元素数量
int8_t contents[]; // 元素数组
} intset;</span>
6.2升级
升级整数集合并添加新元素共分为三步进行:
1)扩展空间,并为新元素分配空间
2)将原数据转型,并放置到正确的位置上
3)将新元素放在最前或最后
6.3升级的好处
1)灵活
6.4 不会降级