为什么要使用 select() 和 fork() ?

问题描述 投票:0回答:0

我一直在阅读《套接字编程》下有关 select() 系统调用的内容,我开始知道使用它而不是 fork() 的主要目的是: fork() 只能用于非阻塞 IO 调用的场景。

后来我遇到了一个程序(下面附有代码的截图),它在我们需要将并发 TCP echo 服务器和迭代 UDP 服务器组合成单个服务器的场景中实现了 select() ;为了复用 TCP 和 UDP 客户端。但服务器端程序似乎使用 fork() 创建子进程,以便与 TCP 客户端建立并通信。

我的问题是,如果我们使用 select(),为什么要使用 fork() 呢?

[Pic-1 Pic-2 Pic-3 Pic-4

c sockets select fork
最新问题
© www.soinside.com 2019 - 2024. All rights reserved.