整数集合是Redis用来保存整数值的集合抽象数据结构,它可以保存类型为int16_t,int32_t,int64_t的整数值,并且保证集合中不会出现重复元素
1.整数集合的实现
typedef struct intset{
//编码方式
uint32_t encoding;
//集合中包含的元素数量
uint32_t length;
//保存元素的数组
int8_t contents[];
}
contents数组是整数集合的底层实现,整数集合中的每个元素都是数组中的项,各个项在数组中按值从小到大有序排列,并且数组中不包含重复项,contents数组的真正类型取决于encoding属性。比如:
如果encoding属性的值为INTSET_ENC_INT16,那么contents就是一个int16_t类型的数组,数组中的每个项都是一个int16_t类型的整数值。
2.升级
????