Redis源码学习之【epoll封装】
2014-01-06 11:55
211 查看
介绍
在上一篇博文中说到了在Redis 的事件处理中使用到了底层的linux epoll,根据Redis的实现可以使用其他的多路通信层,但是在一般的linux服务器中使用的最多的还是epoll所以这里主要介绍一下epoll。Redis并没有直接的使用linux的epoll而是对其进行了一个简单的封装。源码
ae_epoll.c分析
在原有的linux epoll的基础上进行封装,主要封装了一下几个函数:aeApiCreate:调用epoll_create创建epoll的句柄,并分配epoll事件。
aeApiFree:调用close关闭epoll_create创建的epoll句柄,并释放epoll事件。
aeApiAddEvent:调用epoll_ctl向aeEventLoop中添加一个事件。
aeApiDelEvent:调用epoll_ctl从aeEventLoop中删除一个事件。
aeApiPoll:调用epoll_wait等待事件。
具体的关于epoll的介绍可以参见博文:点击打开链接
相关文章推荐
- Redis源码学习之【epoll封装】
- Redis源码学习之【Tcp Socket封装】
- 结合redis设计与实现的redis源码学习-14-事件(ae.c/ae_epoll.c)
- libevent2.0源码学习三:对网络模型的(EPOLL)的封装
- libevent2.0源码学习三:对网络模型的(EPOLL)的封装
- redis源码学习之跳跃表
- 结合redis设计与实现的redis源码学习-15-TCP网络连接(anet.c)
- 学习Redis的源码
- 分布式缓存技术redis学习系列(八)——JedisCluster源码解读:集群初始化、slot(槽)的分配、值的存取
- redis源码解析----epoll的使用
- Redis源码学习随笔
- Swoole源码学习记录(八)——Reactor模块-epoll
- 结合redis设计与实现的redis源码学习-5-skiplist(跳跃表)
- redis源码分析(六)、redis命令学习总结—Redis 集合(Set)
- redis源码分析(二)、sds动态字符串学习总结
- Redis源码学习之【网络通信框架】
- Redis源码学习-AOF
- Redis源码学习
- Redis源码学习1-sds.c
- 源码分析redis的有序集合,学习skiplist跳跃表数据结构