位于代码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 };

libevent源码分析1 ----evnet相关结构体分析的更多相关文章

  1. [Go] gocron源码阅读-go语言的结构体

    结构体类型 type 名字 struct{},下面这段是github.com/urfave/cli包里的代码,声明了一个App的结构体类型 type App struct { // The name ...

  2. Linux内核device结构体分析

    1.前言 Linux内核中的设备驱动模型,是建立在sysfs设备文件系统和kobject上的,由总线(bus).设备(device).驱动(driver)和类(class)所组成的关系结构,在底层,L ...

  3. FFMPEG结构体分析:AVPacket

    注:写了一系列的结构体的分析的文章,在这里列一个列表: FFMPEG结构体分析:AVFrame FFMPEG结构体分析:AVFormatContext FFMPEG结构体分析:AVCodecConte ...

  4. FFMPEG结构体分析:AVFrame

    注:写了一系列的结构体的分析的文章,在这里列一个列表: FFMPEG结构体分析:AVFrameFFMPEG结构体分析:AVFormatContextFFMPEG结构体分析:AVCodecContext ...

  5. [转载] FFMPEG结构体分析:AVFrame

    注:写了一系列的结构体的分析的文章,在这里列一个列表: FFMPEG结构体分析:AVFrameFFMPEG结构体分析:AVFormatContextFFMPEG结构体分析:AVCodecContext ...

  6. FFMPEG结构体分析:AVFormatContext

    注:写了一系列的结构体的分析的文章,在这里列一个列表: FFMPEG结构体分析:AVFrameFFMPEG结构体分析:AVFormatContextFFMPEG结构体分析:AVCodecContext ...

  7. FFMPEG结构体分析:AVStream

    注:写了一系列的结构体的分析的文章,在这里列一个列表: FFMPEG结构体分析:AVFrame FFMPEG结构体分析:AVFormatContext FFMPEG结构体分析:AVCodecConte ...

  8. FFMPEG结构体分析:AVCodec

    注:写了一系列的结构体的分析的文章,在这里列一个列表: FFMPEG结构体分析:AVFrame FFMPEG结构体分析:AVFormatContext FFMPEG结构体分析:AVCodecConte ...

  9. FFMPEG结构体分析:AVIOContext

    注:写了一系列的结构体的分析的文章,在这里列一个列表: FFMPEG结构体分析:AVFrame FFMPEG结构体分析:AVFormatContext FFMPEG结构体分析:AVCodecConte ...

随机推荐

  1. 4 - Channelhandler和ChannelPipeline

    4.1 Channelhandler 4.1.1 Channel声明周期(状态事件) 方法 描述 ChannelUnregistered Channnel已创建,但是未注册到EventLoop Cha ...

  2. docker的卸载方法

    卸载: 1.查询docker安装过的包: yum list installed | grep docker 2.删除安装包: yum remove docker-ce.x86_64 ddocker-c ...

  3. Maven的学习资料收集--(九) 构建SSH项目以及专栏maven

    在这里整合一下,使用Maven构建一个SSH项目 1.新建一个Web项目 可以参照前面的博客 2.添加依赖,修改pom.xml <project xmlns="http://maven ...

  4. Primefaces dataTable设置滚动条问题

    primefaces dataTable设置滚动条后不论有几行数据都会有滚动条的位置,当数据所占高度大于scrollHeight设定的值时才会出现滚动条,问题是,没有出现滚动条时,预留滚动条的位置不仅 ...

  5. Htpp通讯协议详解

    转自:http://blog.csdn.net/gueter/archive/2007/03/08/1524447.aspx Author :Jeffrey 引言 HTTP是一个属于应用层的面向对象的 ...

  6. VS2015配置使用Sqlite以及EF6框架记录

    项目中需要使用到Sqlite本地数据库保存数据,以防止离线情况下设备的正常使用. 一.下载vs2015下的sqlite插件,并安装 插件下载页面:http://system.data.sqlite.o ...

  7. cocos2d-x-2.2.0_win7+vs2010搭建_eclipse+ndk-r9+cygwin搭建_教程以及编译问题汇总

    声明:我是才用c/c++和cocos2d-x的如果有错误欢迎指出 文章内容我亲测过可以通过,同时我也会一直更新内容 感谢那些把自己的东西分享出来的人 原文地址:http://www.cnblogs.c ...

  8. 使用CreateProcess函数运行其他程序

    为了便于控制通过脚本运行的程序,可以使用win32process模块中的CreateProcess()函数创建一个运行相应程序的进程.其函数原型如下.CreateProcess(appName, co ...

  9. 转: ZigBee/Z-Stack CC2530实现低功耗运行的配置简介

    转: ZigBee/Z-Stack CC2530实现低功耗运行的配置简介http://bbs.elecfans.com/jishu_914377_1_1.html(出处: 中国电子技术论坛) 设备支持 ...

  10. Command Line Client(建库,建表)

    Enter password: ******Welcome to the MySQL monitor. Commands end with ; or \g.Your MySQL connection ...