c++ - 两个进程绑定并监听相同的地址和端口,但是如何确保它们都能接收到传入的消息?
问题描述
我有一个服务器应用程序,它的部分代码如下:
socket = socket(...); // create a socket
setsockopt(RE_USEADDR); // set the socket option RE_USEADDR
bind(socket, 127.0.0.1, 8080); // bind the socket to the IP address and Port
listen(); // listen
这是问题:
- 我在同一台机器上、同一个用户上启动了服务器应用程序两次。他们都可以很好地工作。
- 启动客户端应用程序,该应用程序连接到
127.0.0.1:8080
- 向服务器发送一些内容。但是,只有一个服务器应用程序可以接收来自客户端的消息。
无论如何要确保两个服务器应用程序都从客户端接收消息。如果有,请解释如何以及为什么在 TCP 和 UDP 中。
非常感谢