libevent源码分析


libevent源代码文件组织结构:

1)头文件:                 event.h                —— 事件宏定义、接口函数声明,主要结构体event的声明;

2)内部头文件:          xxx-internal.h      —— 内部数据结构和函数,(对外不可见,信息隐藏);

3)libevent框架:        event.c                —— event整体框架的代码实现;

4)I/O 多路复用机制:epoll.c、select.c、devpoll.c、kqueue.c

5)定时事件管理:      min-heap.h         —— 其实就是一个以时间作为key的小根堆结构。

6)信号管理:             signal.c               —— 对信号事件的处理;

7)辅助功能函数:      evutil.h、evutil.c —— 创建socket pair 和一些时间操作函数

8)日志:                    log.h、log.c         —— log日志函数

9)缓冲区管理:         evbuffer.c、buffer.c —— libevent对缓冲区的封装

10)基本数据结构:   compat\sys下queue.h —— 基本数据结构,链表、双向链表、队列等。

11)实用网络库:       http 和 evdns        —— 是基于libevent实现的http服务器和异步dns查询库。



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值