zoukankan      html  css  js  c++  java
  • epoll机制

    epoll一共需要三步:

    //声明epoll类型的结构体,ev位要设置的变量,rev位返回时设置变量

    1.   创建epoll机制

            int   epfd;

      struct   epoll_event   ev,   rev[count];

      epfd=epoll_create1(0)//参数为0或EPOLL_CLOEXEC

    2.  配置epoll文件

      epoll_ctl (int epfd, int op, int fd, struct epoll_event *event)

      epfd:epoll机制文件描述符

      op:    执行什么操作

         EPOLL_CTL_ADD:添加一个文件描述符到epoll机制中

         EPOLL_CTL_ADD :

         EPOLL_CTL_ADD:删除一个文件文件描述符

      fd:要对哪一个文件描述符进行操作

      struct   epoll_event{

          uint32_t     event;  //要监听的事件  //EPOLLIN |  EPOLLIN | EPOLLIN....

           epoll_data_t  data;//data是一个联合体,一般常用*ptr或fd

      }

     3.  阻塞等待事件

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

       epfd:epoll文件描述符

          events:事件发生后用于记录的数组,如上声明的rev;

       maxevents:最大监听(并发)数量

         timeout:-1代表永不超时,无触发则阻塞。q       

  • 相关阅读:
    Windows下输入法全角符,半角符的切换
    hdu 2546 饭卡
    hdu 1712 ACboy needs your help
    hdu 3033 I love sneakers!
    hdu 1171 Big Event in HDU
    hdu 1114 Piggy-Bank
    HDU 1058 Humble Numbers
    hdu 1297
    hdu 2050
    hdu 2563
  • 原文地址:https://www.cnblogs.com/edan/p/8986838.html
Copyright © 2011-2022 走看看