Redis 设计与实现读书笔记一 Redis List

list结构体 adlist.h/list(源码位置)

/*
 * 双端链表结构
 */
typedef struct list {

    // 表头节点
    listNode *head;

    // 表尾节点
    listNode *tail;

    // 节点值复制函数
    void *(*dup)(void *ptr);

    // 节点值释放函数
    void (*free)(void *ptr);

    // 节点值对比函数
    int (*match)(void *ptr, void *key);

    // 链表所包含的节点数量
    unsigned long len;

} list;

listNode结构体 adlist.h/listNode

/*
 * 双端链表节点
 */
typedef struct listNode {

    // 前置节点
    struct listNode *prev;

    // 后置节点
    struct listNode *next;

    // 节点的值
    void *value;

} listNode;

 

相关文章:

  • 2021-09-21
  • 2021-09-09
  • 2021-12-27
  • 2021-10-08
  • 2021-09-26
  • 2021-12-05
  • 2021-05-31
  • 2021-11-06
猜你喜欢
  • 2021-09-26
  • 2021-07-26
  • 2021-12-20
  • 2022-12-23
  • 2021-11-06
相关资源
相似解决方案