C# Socket.BeginReceive:如果数据不存在,则超时';你不能通过吗?

C# Socket.BeginReceive:如果数据不存在,则超时';你不能通过吗?,c#,network-programming,asyncsocket,C#,Network Programming,Asyncsocket,我正在做一个可变长度的消息接收,类似于在头中指定消息正文的长度,我在循环中异步读取正文,直到它全部被传输 然而,由于网络的原因,有时这会变得有点太滞后,为了保持连接新鲜,我想关闭套接字并重新连接。不幸的是,如果数据速度慢且随意返回,异步beginreceive似乎不会真正返回 什么是测量速度的最合适方法,以便在必要时断开连接?我想我可以将DateTime对象置于异步状态,然后进行一些计算 在上下文中,这是我与Arduino一起构建的wifi温度探测器,它以突发方式发送数据,但wifi连接在预期使

我正在做一个可变长度的消息接收,类似于在头中指定消息正文的长度,我在循环中异步读取正文,直到它全部被传输

然而,由于网络的原因,有时这会变得有点太滞后,为了保持连接新鲜,我想关闭套接字并重新连接。不幸的是,如果数据速度慢且随意返回,异步beginreceive似乎不会真正返回

什么是测量速度的最合适方法,以便在必要时断开连接?我想我可以将DateTime对象置于异步状态,然后进行一些计算


在上下文中,这是我与Arduino一起构建的wifi温度探测器,它以突发方式发送数据,但wifi连接在预期使用的地方确实不可靠。

我在此为自己提供了这个问题的风滚草徽章。。。