Redis封装了链表,下面看redis如何实现的链表

typedef struct listNode{
    struct listNode *prev;
    struct listNode *next;
    void *value;
}listNode;


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