码迷,mamicode.com
首页 > 其他好文 > 详细

epoll学习

时间:2018-02-21 23:58:51      阅读:320      评论:0      收藏:0      [点我收藏+]

标签:pos   epoll_ctl   roc   pre   文件描述符   sys   使用   lin   body   

一、epoll_create

#include <sys/epoll.h>

int epoll_create(int size);
int epoll_create1(int flags);
返回:成功非负文件描述符,-1出错
size:内核监听数目一共多大

创建一个epoll接口,size参数和select不同,不是fd+1?

需要注意的是:当创建好epoll后,它就会占用一个fd值,在linux /proc/id/fd/能看到这个fd的,所以使用完epoll后,必须close()关闭,否则可能导致耗尽fd。

 

二、epoll_ctl

#include <sys/epoll.h>

int epoll_ctl(int epfd, int op, int fd, struct epoll_event *event);
返回:0成功,-1失败
epfd:
op:
fd:
event:

 

三、epoll_wait

#include <sys/epoll.h>

int epoll_wait(int epfd, struct epoll_event *events,
        int maxevents, int timeout);

int epoll_pwait(int epfd, struct epoll_event *events,
        int maxevents, int timeout, const sigset_t *sigmask);

 

epoll学习

标签:pos   epoll_ctl   roc   pre   文件描述符   sys   使用   lin   body   

原文地址:https://www.cnblogs.com/ch122633/p/8457782.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!