【发布时间】:2013-10-03 08:52:38
【问题描述】:
我阅读了手册页并浏览了这个示例以供使用:https://banu.com/blog/2/how-to-use-epoll-a-complete-example-in-c/,但我无法找到一种方法来使用 epoll 来做我想做的事情,有人可以帮我吗?
基本上我正在编写一个 netcat 类型的实用程序来更好地学习 C/网络。我创建了一个可以在一个端口上侦听和连接的基本服务器/客户端。现在我想扩展服务器方面来监听一个端口范围。
我计划通过 for 循环为每个端口创建 socket()、bind() 和 listen()。
由于端口范围最大可达 65k,因此我需要在收到连接请求时轮询它们并接受()。
取消链接使用 poll 或 epoll 处理一个端口上的多个连接的典型 C 服务器,这是数千个潜在端口之一上的一个连接。我无法从示例中完全了解如何对套接字进行 epoll 以及在请求连接时接受它并取消绑定/停止侦听/轮询。
有没有人有任何示例解释/代码让我开始?
【问题讨论】: