redis aeEventLoop结构
2021-08-13 15:36:54 1 举报
redis aeEventLoop结构
作者其他创作
大纲/内容
下一次时间事件执行的id
已触发的事件
事件处理前执行的函数
aeFiredEvent
int fd,文件描述符序号
int mask,事件类型
事件类型
取值
描述
AE_NONE
0
默认事件,初始化值
AE_READABLE
1
可读事件
AE_WRITABLE
2
可写事件
AE_BARRIER
4
影响读写顺序,如果你想在读事件触发前先触发写事件,就在mask上加入此值
int maxfd
int setsize
long long timeEventNextId
time_t lastTime
aeFileEvent *events
aeFiredEvent *fired
aeTimeEvent *timeEventHead
int stop
void *apidata
aeBeforeSleepProc *beforesleep
aeBeforeSleepProc *aftersleep
当前已注册的连接数
事件处理之后执行的函数
轮询api
时间事件的头节点
已注册的事件
aeEventLoop
aeFileEvent
int mask,事件类型,如上图
aeFileProc *rfileProc 读事件处理函数
aeFileProc *wfileProc,写事件处理函数
void *clientData
aeTimeEvent
long long id,唯一标识符
long when_sec,执行时间秒数
long when_ms,执行时间毫秒数
aeTimeProc *timeProc,事件处理函数
aeEventFinalizerProc *finalizerProc,事件销毁处理函数
struct aeTimeEvent *prev,上一时间事件节点
struct aeTimeEvent *next,下一时间事件节点
时间处理开关
上一次执行事件的时间
0 条评论
下一页