-
头文件: #include <event2/bufferevent.h>;
-
bufferevent的理解:
(1).bufferevent是libevent为IO缓冲区操作提供的一种通用机制;
(2).bufferevent由一个底层的传输端口(如套接字),一个读取缓冲区和一个写入缓冲区组成。
(3).bufferevent在读取或者写入了足够量的数据之后调用用户提供的回调 -
回调-缓冲区对应的操作: 每个bufferevent有两个数据相关的回调
(1).一个读取回调
从底层传输端口读取了任意量的数据后会调用读取回调(默认)
(2).一个写入回调
输出缓冲区中足够量的数据被清空到底层传输端口后写入回调会被调用(默认)
4. bufferevent的使用: (1).创建基于套接字的bufferevent: 函数:struct bufferevent * bufferevent_socket_new( struct event_base *base, evutil_socket_t fd, enum bufferevent_options options );
参数: -base:事件管理器 -fd:socket套接字 -options:REV_OPT_CLOSE_ON_FREE
返回值:成功返回一个bufferevent,失败返回BULL;(2).bufferevent读写缓冲区回调操作:
函数:void bufferevent_setcb( struct
libevent | 3.libevent应用带缓冲区的事件 —— bufferevent
最新推荐文章于 2023-06-25 22:30:30 发布