6

考虑以下代码:

client.Send(data, data.Length, endpoint);
byte[] response = client.Receive(ref endpoint);

虽然根据 WireShark(网络嗅探器)的说法,远程主机确实回复了数据,但这里的应用程序只是永远等待数据......由于某种原因它没有收到来自远程主机的回答。

有任何想法吗?

4

2 回答 2

6

您可能想要设置两个 UdpClients:一个用于侦听,一个用于发送。

对于接收 UdpClient,请使用接受端口的构造函数。

于 2008-10-21T16:20:33.193 回答
1

可能远程主机有防火墙然后无法响应请求,在发送请求之前设置

client.Client.ReceiveTimeout = 5000; 

因此,当响应无法获得请求时,您会遇到异常

于 2011-01-31T10:02:48.490 回答