[libevent]事件流程大览
来源:互联网 发布:搜索引擎优化技术 编辑:程序博客网 时间:2024/04/30 07:19
我 们可以从sample的文件夹里面找到以下文件代码:
int called = 0;static voidsignal_cb(int fd, short event, void *arg){struct event *signal = arg;printf("%s: got signal %d\n", __func__, EVENT_SIGNAL(signal));if (called >= 2)event_del(signal);called++;}intmain (int argc, char **argv){struct event signal_int; /* Initalize the event library */event_init();/* Initalize one event */event_set(&signal_int, SIGINT, EV_SIGNAL|EV_PERSIST, signal_cb, &signal_int);event_add(&signal_int, NULL);event_dispatch();return (0);}
第一步:event_init()实际上是相当于调用了event_base_new()创建了一个event_base对象
第二步:event_set()设置event(signal_int)的成员
第三步:event_add()相当于注册事件吧
第四步:循环
接下来我们来整理一下程序的运行过程,不断深入。
首先是event_init():
event_set()就是单纯的设置成员而已。
event_add():
event_dispatch():
列出了一些主要的函数,接下来的几篇就是对函数的分析了,一句一句~
0 0
- [libevent]事件流程大览
- libevent源码学习-----事件驱动流程分析
- libevent源码分析---基本使用场景和事件流程
- Libevent源码学习(三) 事件内部流程解析上部
- Libevent源码学习(四) 事件内部流程解析下部
- Libevent基本流程
- Libevent工作流程
- 【转载】libevent简单流程
- libevent常见开发流程
- libevent 事件loop分析
- libevent事件通知机制
- libevent 事件通知
- libevent 事件loop分析
- libevent事件循环
- [libevent]事件主循环
- libevent signal 信号事件
- libevent事件通知
- libevent事件主循环
- Audio Session Programming Guide(官方文档翻译一)
- delphi正则应用
- Linux查看版本或发行版本
- 理解DOM事件流的三个阶段
- 使用erlang 的公司/产品
- [libevent]事件流程大览
- JDBC
- javaEE:day6-requset和response用法、表单参数的接受、文件手动上传(简易版)
- Python 多线程 入门学习 (一) 持续更新中
- ASP.NET MVC3中Controller与View之间的数据传递总结
- AngularJS HTML DOM
- oracle数据库sql语句优化
- Javascript变量提升(Hoisting)
- 【渲染引擎】agg画线介绍