Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/282.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/extjs/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 数据太大时UdpClient Send不工作_C#_.net - Fatal编程技术网

C# 数据太大时UdpClient Send不工作

C# 数据太大时UdpClient Send不工作,c#,.net,C#,.net,我正在反序列化一个对象并通过UdpClient发送它 如果我发送两个字节的数据,数据会被很好地接收,但是如果我将反序列化对象作为字节发送,则不会发送任何内容 u.Send(b, b.Count(), "x.x.x.x", 1452); //does not work (b.Count()=3744) u.Send(new byte[] { 0x00, 0x00 }, 2, "x.x.x.x", 1452); //works 我认为这与数据的大小有关 我试图避免使用TcpClient,因为UDP

我正在反序列化一个对象并通过UdpClient发送它

如果我发送两个字节的数据,数据会被很好地接收,但是如果我将反序列化对象作为字节发送,则不会发送任何内容

u.Send(b, b.Count(), "x.x.x.x", 1452); //does not work (b.Count()=3744)
u.Send(new byte[] { 0x00, 0x00 }, 2, "x.x.x.x", 1452); //works
我认为这与数据的大小有关

我试图避免使用TcpClient,因为UDP速度更快,但由于它是流式传输的,这在TCP中可以工作吗


谢谢。

你寄什么回来?顺便说一句,UDP不能保证交付。UDP更快是一种谬论。在某些情况下,它具有较低的延迟,但在高带宽情况下,TCP实际上具有更好的吞吐量。实现起来也更简单。在任何情况下,关于UDP的最大数据报大小以及较大数据报对传输的影响,web上已有相当数量的信息可用。我开始认为这可能是目标防火墙的问题。现在检查一下u.Send=3744顺便说一句Mickyfirewall-如果较小的Send有效,我不会这么认为。3744似乎暗示它已成功发送。