nber1994



redis数据结构--链表

August 9, 2019

redis数据结构–链表

链表结构

typedef struct listNode {
    //前置节点
    struct listNode *prev;
    //后置节点
    struct listNode *next;
    //节点的值
    void *value;
}

多个listNode可以通过prev和next链接为双向链表

typdef struct list {
    //表头节点
    listNode *head;
    //表尾节点
    listNode *tail;
    //链表包含的节点数量
    unsigned long len;
    //节点值复制函数
    void *(*dup)(void *ptr);
    //节点值释放函数
    void *(*free)(void *ptr);
    //节点值对比函数
    void *(*match)(void *ptr void *key);
}

redis链表实现的特性:

重点回顾