客户端连接的多个套接字

ano*_*non 3 c sockets winsock

是否可以在一个程序中拥有多个套接字,可以通过 TCP 或 UDP 使用?

例如: SocketOne:4567端口的TCP套接字;socketTwo:8765 端口的 TCP 套接字;socketThree:7643 处的 UDP 套接字。

这些系列将是 AF_INET,每个系列的地址都是 INADDR_ANY。

我绑定并监听 TCP,只绑定 UDP。

让我怀疑要这样做的是,我如何一起等待每个套接字上的客户端。

我知道下面的代码不起作用,但我不知道还有什么,或如何解释我想说的话。

while (1)  
{   
    connected = accept(socketOne, (struct sockaddr *)&client_addr,&sin_size);

    connected = accept(socketTwo, (struct sockaddr *)&client_addr,&sin_size);

    bytes_read = recvfrom(socketThree,recv_data,1024,0,(struct sockaddr *)&client_addr, &addr_len);

}
Run Code Online (Sandbox Code Playgroud)