手抄报 安全手抄报 手抄报内容 手抄报图片 英语手抄报 清明节手抄报 节约用水手抄报

tcp 如何调节发送速度

时间:2024-10-14 16:58:30

1、发送瞿搋村乇端:byte[]buffers=newbyte[Constants.RECORDSIZE];FileStreamfs=File.Open(filename,僻棍募暖FileMode.Open);intn=0;intsd,sds,allsend,ti;allsend=0;//已发送的字节数ti=0;//发送次数while(true){n=fs.Read(buffers,0,Constants.RECORDSIZE);//从文件流中读取数据到发送缓冲区sds=0;while(n>0)//要求把n个字节的数据发出去{sd=sender.Send(buffers,sds,n-sds,SocketFlags.None);ti++;//这是发送次数,allsend+=sd;SendMessage(mainWindow,2000,n,ti);sds+=sd;if(sds==n)break;}if(n==0)//文件流读取完毕,退出发送过程break;}fs.Close();更多0

tcp 如何调节发送速度

2、如果在发送过程设置等待,情况会好些,但是无法确定等待多长时间,接收端代码:longfilesize=BitConverter.ToInt64(recvbuf,0);//接收到的文件大小FileStreamfs=File.Create(path);longrecvall=0;//接收到的字节数while(recvall<filesize){r=0;try{r=handle.Receive(recvbuf,Constants.RECORDSIZE,SocketFlags.None);}catch{}if(r>0){recvall+=r;fs.Write(recvbuf,0,r);}}fs.Close();

tcp 如何调节发送速度

3、你在接收程序捕获到异常后什么也不处理,如果这时候出现网络意外,就会在while中死循环,客户端就发送不了任何数据了。

tcp 如何调节发送速度

4、你在捕获到异常后,关闭连接。客户端发生发送异常后,停上几秒,然后重新尝试连接,并从上次断点继续发送。你可以还要设计一个协议,让服务器告诉客户端成功收到数据的位置,让客户端从断点处重新传输。

tcp 如何调节发送速度
© 手抄报圈