libevent使用

创建事件集

struct event_base *event_base_new(void)

创建事件

struct event event_new(struct event_base ,evutil_socket_t hort ,event_callback_fn,void*)

参数一:事件所在的事件集。
参数二:socket的描述符。
参数三:事件类型,其中EV_READ表示等待读事件发生,EV_WRITE表示写事件发生,或者它俩的组合,EV_SIGNAL表示需要等待事件的号码,如 果不包含上述的标志,就是超时事件或者手动激活的事件。
参数四:事件发生时需要调用的回调函数。
参数五:回调函数的参数值。

添加事件和删除事件

int event_add(struct event * ev,const struct timeval* timeout)

参数一:需要添加的事件
参数二:事件的最大等待事件,如果是NULL的话,就是永久等待

int event_del(struct event *ev)

参数一:需要删除的事件

分配监听事件

int event_base_dispatch(struct event_base * )

参数一:需要监视的事件集

I/O buffer事件

struct bufferevent* bufferevent_socket_new(struct event_base * base,evutil_socket_t fd,int options)

参数一:需要添加到的时间集
参数二:相关的文件描述符
参数三:0或者是相应的BEV_OPT_*可选标志

int bufferevent_enable(struct bufferevent * bev,short event)

参数一:需要启用的bufferevent
参数二:any combination of EV|READ | EV_WRITE

int bufferevent_disable(struct bufferevent * bev,short event)

参数说明:同上

size_t bufferevent_read(struct bufferevent bev,void data,size_t size)

参数一:读取的buffer_event事件
参数二:存储数据的指针
参数三:数据buffer的大小

返回值:读取数据的字节数

int bufferevent_write(struct bufferevent bev,const void data,size_t size)

参数一:读取的buffer_event事件
参数二:存储数据的指针
参数三:要写入的数据的大小,字节数

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值