当前位置:   article > 正文

redis dictht使用sizemask来确保索引不越界_redis sizemask

redis sizemask

文章系转载,便于整理和分类,原文地址:https://www.cnblogs.com/tekkaman/p/5141936.html

在redis的字典实现中,dictht 即字典哈希表有一个sizemask字段。

typedef struct dictht {
    dictEntry **table;
    unsigned long size;
    unsigned long sizemask;
    unsigned long used;
} dictht;
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

此字段的作用是当使用下标访问数据时,确保下标不越界。

如当前size为8时,sizemask为7(0x111)。当给定一个下标N时,将N与sizemask进行与操作后得出下标才是最终使用的下标,这是一个绝对不会越界的下标。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/空白诗007/article/detail/814436
推荐阅读
相关标签
  

闽ICP备14008679号