epoll基础篇一

5 篇文章 0 订阅

epoll基础篇一:


```cpp
struct epoll_event{
	__uint32_t events;	//Epoll events
	epoll_data_t data;	//User datavariable
};

typedef union epoll_data{
	void* ptr;
	int fd;
	__uint32_t u32;
	__uint64_t u64;
}epoll_data_t;


```cpp
/*description:
 *生成一个epoll专用的文件描述符,其实是申请一个内核空间,用来存放你想关注的socket fd是否
 *发生以及发生了什么事件。size就是你在这个epoll fd上能关注的最大的socket fd数,大小自定,
 *只要内存足够(我的机器上这个值最大有19位数)
 */
int epoll_create(int size);
/*description:
 *控制某个epoll文件描述符上的事件:注册、修改、删除。其中参数epfd是epoll_create()创建的
 *epoll专用的文件描述符。相对于select模型中的FD_SET和FD_CLR宏
 */
int epoll_ctl(int epfd, int op, int fd, int epoll_event* event);
/*description:
 *等待I/O事件发生
 *params:
 *epfd:		由epoll_create()生成的epoll专用的文件描述符
 *epoll_event: 用于回传待处理事件的数组
 *maxevents:	每次能处理的事件数
 *timeout:		等待I/O事件发生的超时值
 *return:
 *返回事件的发生数
 */
int epoll_wait(int epfd, struct epoll_event* events, int maxevents, int timeout);
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值