为什么redis使用“sizemask”来代替大小?

41ik7eoe  于 2021-06-08  发布在  Redis
关注(0)|答案(0)|浏览(559)
typedef struct dictht {
    dictEntry**table;
    unsigned long size;
    unsigned long sizemask;
    unsigned long used;
} dictht;

如上面代码所示,redis的hashtable(dictht)的数据结构中,sizemask=size-1,为什么redis要用sizemask来计算hashtable元素的位置呢?我不认为bit操作比%操作更有效(对不起,我的英语很差,但我真的很想知道sizemask的设计理念。)

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题