请考虑以下代码:
client.Send(data, data.Length, endpoint);
byte[] response = client.Receive(ref endpoint);
虽然根据WireShark(网络嗅探器),远程主机确实回复了数据, 这里的应用程序只是永远等待数据......由于某种原因,它没有从远程主机接收到答案。
有什么想法吗?
答案 0 :(得分:5)
您可能想要设置两个UdpClients:一个用于监听,一个用于发送。
对于接收UdpClient,请使用带端口的构造函数。
答案 1 :(得分:1)
可能远程主机有防火墙,然后在发送请求设置
之前无法响应请求client.Client.ReceiveTimeout = 5000;
所以当响应无法获得请求时,您会遇到异常