我正在编写一个C程序,对于每个要由服务器处理的新请求,我需要打开一个新的TCP连接?也就是说,客户端的每个请求都需要通过与侦听特定端口的服务器的单独TCP连接来处理。
有人可以帮我解决代码指针吗?
任何代码段都非常有用吗?
答案 0 :(得分:1)
您可以使用select()
功能(假设您正在使用<sys/socket.h>
),“您可以同时监控多个套接字。它会告诉您哪些套件已准备就绪读取,准备写入,以及哪些套接字引发了异常“来自http://beej.us/guide/bgnet/(这里你可以下载一本关于网络编程基础的好书)。
对于使用select check http://beej.us/guide/bgnet/examples/selectserver.c
的服务器示例希望有所帮助
答案 1 :(得分:0)
如果您需要使用套接字保存状态,请将其与所需数据一起放在struct
中,并将这些结构作为列表链接在一起。要检查哪个插座已准备就绪,请参阅Maluchi的答案。