本章节是基于libevent的应用,C++的编程中,如果遇到C接口,我们可以先封装出一个类出来,也就是C转C++的写法。
1 ev_base
ev_base是基于libevent封装了一层C++类接口,源码文件两个:ev_base.h和ev_base.cpp;接口定义如下:
源码其实非常的简单,就是基于libevent实现了定时器和loop,以及接口对资源的管理(内存申请回收等):
- ev_base::ev_base()
- {
- ::signal(SIGPIPE, SIG_IGN);
- this->base_ = event_base_new();
- this->tv_.tv_sec = 0;
- this->tv_.tv_usec = 1000 * 100;
- evtimer_set(&this->evtimer_, ev_base::