在网络编程中,使用 select() 处理多客户端的连接是非常常用的方法,select() 是一个非常古老的方法,在大量连接下会显得效率不高,而且其对描述符的数值还有一些限制,Linux内核从 2.1.13 版以后提供了 poll() 替代 select(),本文介绍 poll() 在网络编程中的使用方法,并着重介绍 poll() 在编程行与 select() 的区别,旨在帮助熟悉 select() 编程的程序员可以很容易地使用 poll() 编程,本文提供了一个具体的实例,并附有完整的源代码,本文实例在 ubuntu 20.04 下编译测试完成,gcc 版本号 9.4.0。
1 前言
- 在『网络编程专栏』中,有两篇文章都涉及到了使用
select()处理多个socket连接: - Linux 上的另一个系统调用
poll(),可以和
本文介绍了在Linux环境下,如何使用poll()替代select()处理多客户端TCP连接。详细阐述了poll()的基本使用方法,与select()在编程上的区别,并提供了一个使用poll()的TCP服务器实例。poll()在性能和描述符限制上优于select(),是处理大量连接的更好选择。文章适合已经了解socket编程和select()的读者。
订阅专栏 解锁全文
648

被折叠的 条评论
为什么被折叠?



