select与poll的区别:.
select 最大监视描述符的数量是1024,而poll没有限制。
select/poll、epoll之间的区别:
1.向内核传递描述符:
select/poll 在每次循环都要把描述符拷贝到内核中,epoll每个描述符只拷贝一次到内核空间。
2.在内核中的实现:
select/poll 轮询检查每个描述符上有没有就绪事件,而epoll在描述符上设置回调函数,有数据就绪,调用回调函数添加到就绪队列。
3.I/O函数返回后,检索就绪描述符的过程
select/poll每次都是遍历所有的描述符,找到就绪的描述符,而epoll直接返回就绪的描述符。