• libevent源码分析1 ----evnet相关结构体分析


    位于代码event-internal.h中。

    event_base类似事件的集合,你创建一个事件,必须将该事件指定一个集合。

    struct event_base {
     50     const struct eventop *evsel; /*evsel和evbase就类比与类和对象之间的关系,evbase是evsel的
     51     一个具体实现,指在这里使用的复用模型*/
     52     void *evbase;
     53     /*这个event_base所关注的事件数目*/
     54     int event_count;        /* counts number of total events */
     55     /*这个event_base中激活事件的数目*/
     56     int event_count_active; /* counts number of active events */
     57     /*判断循环退出的条件*/
     58     int event_gotterm;      /* Set to terminate loop */
     59     int event_break;        /* Set to terminate loop immediately */
     60
     61     /* active event management */
     62     /*只存事件链表,执行存放不同优先级事件的链,所以使用二级指针,激活事件的链表*/
     63     struct event_list **activequeues;
     64     /*事件链表的数目,数据是根据优先级来决定的*/
     65     int nactivequeues;
     66
     67     /* signal handling info */
     68     /*处理信号事件的单独结构体*/
     69     struct evsignal_info sig;
     70     /*存放所有事件的链表*/
     71     struct event_list eventqueue;
     72     struct timeval event_tv;
     73     /*管理和超时事件相关的时间小顶堆*/
     74     struct min_heap timeheap;
     75     /*存放时间的时间缓冲*/
     76     struct timeval tv_cache;
     77 };

  • 相关阅读:
    作业1-1 打印华氏温度与摄氏温度对照表
    python配置yaml
    python读写Excel方法(xlwt和xlrd)
    python发送邮件(smtplib)
    python之os模块(os.path)
    python简单面试题(2)
    python---Logging日志模块
    python---python装饰器
    如何从零开始学习自动化
    软件测试不得不知的基础知识
  • 原文地址:https://www.cnblogs.com/haoxing990/p/6880379.html
Copyright © 2020-2023  润新知