R..*_*R.. 16
poll除非满足以下所有条件,否则始终使用:
epoll或者为没有的系统提供备用.epoll列表中添加/删除文件描述符与poll操作一样昂贵,因为它需要进入/离开内核空间).pla*_*aes 11
首先,poll(2)只是电平触发,但epoll(4)可以用作边沿或电平触发的接口.
现在复杂性:poll关于观察描述符(fds)数量的复杂性是O(n),因为它每次发生"就绪"事件时扫描所有fds,epoll基本上是O(1),因为它不会对所有事件执行线性扫描被观察的描述符.
在可移植性方面 - epoll特定于Linux,我建议查看libev和libevent库.另外,看看Dan Kegel的优秀写作:" C10K问题 ".
epoll(7)简洁地总结道:epoll“可以很好地扩展到大量监视的文件描述符。” 但是,poll它是 POSIX 标准接口,因此在需要可移植性时使用它。
| 归档时间: |
|
| 查看次数: |
11335 次 |
| 最近记录: |