我正在从我的C#服务器应用程序向客户端发送批量数据。不同的客户端可能具有不同的带宽量。例如,某些客户可能正在使用拨号,宽带等。
低带宽客户端将无法快速获取数据,这可能会导致我的服务器应用程序出现阻塞。
如果未成功接收数据,我正在向客户端重试发送5次。我需要通过跟踪客户端的带宽速率来限制我的服务器发送的数据。
如何确定C#中接收客户端的带宽率?
答案 0 :(得分:3)
这不是一个非常好的方法,因为任何特定客户端的带宽都可能发生巨大变化。
相反,实现一些流量控制(TCP为您提供此功能)。可能您唯一需要做的就是为非阻塞I / O配置套接字,因此当传输窗口填充而不是阻塞您的线程时,它会给出错误消息。