Advertisement

Linux-高级IO之poll和epoll

阅读量:

poll与epoll机制对比

  • poll基础概念
      • poll的特性与局限性
    • epoll

    • epoll运作机制

      • epoll的优势
    • epoll实现方式

    • 基于epoll的LT模式服务器实现

poll基本概念解析

前一篇:高级IO之select(点击直达)介绍了select,接下来我们来探讨poll。
poll的运作原理与select相似,同样是通过轮询方式管理多个描述符,并依据描述符的状态执行相应操作,不同之处在于poll不存在对文件描述符最大数量的限制。

poll函数的接口定义

复制代码
    int poll(struct pollfd *fds, nfds_t nfds, int timeout);
    
    
    AI写代码cpp

参数说明:

  • fds是一个被poll函数监控的结构体数组。每个数组元素包含三个组成部分:文件描述符、所监听的事件类型集合以及实际返回的事件类型集合。
  • nfds用于表示fds数组中元素的数量。
  • timeout参数定义了poll函数等待事件发生的最大时间,单位为毫秒(ms)

pollfd结构:

复制代码
     struct pollfd {

全部评论 (0)

还没有任何评论哟~