一.I/O复用的作用
I/O 复用使得程序能同时监听多个文件描述符,这对于提高程序的性能至关重要。
二.什么情况需要使用I/O复用?
通常,网络程序在下列情况下需要使用 I/O 复用技术:
- TCP 服务器同时要处理监听套接字和连接套接字。
- 服务器要同时处理 TCP 请求和 UDP 请求。
- 程序要同时处理多个套接字。
- 客户端程序要同时处理用户输入和网络连接。
- 服务器要同时监听多个端口。
三.I/O复用
I/O 复用虽然能同时监听多个文件描述符,但它本身是阻塞的。并且当多个文件描述符同时就绪时,如果不采取额外的措施,程序就只能按顺序依处理其中的每一个文件描述符,这使得服务器看起来好像是串行工作的。如果要提高并发处理的能力,可以配合使用多线程或多进程等编程方法。