版权所有 © 2014 tutorialspoint
epoll_ctl - epoll描述符的控制接口
#include <sys/epoll.h> int epoll_ctl(int epfd, int op, int fd, struct epoll_event *event)
int epoll_ctl(int epfd, int op, int fd, struct epoll_event *event)
通过请求对目标文件描述符fd执行操作op来控制epoll描述符epfd。event描述与文件描述符fd链接的对象。struct epoll_event定义为
typedef union epoll_data { void *ptr; int fd; __uint32_t u32; __uint64_t u64; } epoll_data_t; struct epoll_event { __uint32_t events; /* Epoll events */ epoll_data_t data; /* User data variable */ };
struct epoll_event { __uint32_t events; /* Epoll events */ epoll_data_t data; /* User data variable */ };
events成员是由以下可用事件类型组成的位集
成功时,epoll_ctl(2)返回零。发生错误时,epoll_ctl(2)返回-1,并适当地设置errno。
epoll_ctl(2)是Linux内核2.5.44中引入的新API。该接口应由Linux内核2.5.66完成。
在2.6.9之前的内核版本中,EPOLL_CTL_DEL操作需要event中的非空指针,即使此参数被忽略也是如此。自内核2.6.9起,使用EPOLL_CTL_DEL时,event可以指定为NULL。
epoll_create (2)
poll (2)
epoll_wait (2)
广告