在 C# 中实现 UDP 服务器向多个客户端发送数据,您可以按照以下步骤进行操作:
UdpClient udpServer = new UdpClient();
IPEndPoint serverEndPoint = new IPEndPoint(IPAddress.Parse("服务器IP地址"), 8888);
udpServer.Client.Bind(serverEndPoint);
接收客户端发送的数据。可以在一个单独的线程中使用 Receive 方法来接收来自客户端的数据,并使用客户端的 IP 地址和端口号来标识客户端。如下所示:
byte[] receiveData = udpServer.Receive(ref clientEndPoint);
在需要向客户端发送数据时,您可以使用 Send 方法将数据发送给特定客户端。如下所示:
byte[] sendData = Encoding.UTF8.GetBytes("Hello, Client!");
udpServer.Send(sendData, sendData.Length, clientEndPoint);
如果您需要向多个客户端发送数据,则可以将上述代码放入循环中,以依次向每个客户端发送数据。如下所示:
while (true)
byte[] receiveData = udpServer.Receive(ref clientEndPoint);
byte[] sendData = Encoding.UTF8.GetBytes("Hello, Client!");
udpServer.Send(sendData, sendData.Length, clientEndPoint);
这样,您就可以创建一个简单的 UDP 服务器,向多个客户端发送数据。
需要注意的是,在 UDP 协议中,数据包发送是无序的,也不能保证数据包的可靠性。如果您需要保证数据包的可靠性和顺序,建议使用 TCP 协议。