libevent-signal(2)

时间:2021-05-06 17:00:25

上一节着重分析了event_init是如何集成signal,这一节从event_add展开分析

ev_events有四种类型

  I/O事件: EV_WRITE和EV_READ
  定时事件:EV_TIMEOUT
  信号:    EV_SIGNAL
  辅助选项:EV_PERSIST,表明是一个永久事件

ev_flags有以下几种状态

#define EVLIST_TIMEOUT 0x01 // event在time堆中
#define EVLIST_INSERTED 0x02 // event在已注册事件链表中
#define EVLIST_SIGNAL 0x04 // 未见使用
#define EVLIST_ACTIVE 0x08 // event在激活链表中
#define EVLIST_INTERNAL 0x10 // 内部使用标记
#define EVLIST_INIT 0x80 // event已被初始化

libevent-signal(2)