C# socket传输大文件问题

xiaoadu123 2011-02-22 02:08:51
传输小文件都没有错,但传输较大的文件时候,窗体就未响应了,而且还会出现等待太久的错误,文件传输也不完整,怎么解决啊,各位哥哥姐姐,救命啊
...全文
165 10 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
ChrisAK 2011-02-22
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 vrhero 的回复:]

窗体就未响应了?关窗体什么事?难道你不是用异步通讯或者后台线程的?
[/Quote]明显不是
jhdxhj 2011-02-22
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 wuyq11 的回复:]
分包发送
控制每次send的时间间隔。
有必须的话可以采用异步响应的试,等收到对方的响应之后再传下一部分。
TCP的连接控制协议只能在一定范围内控制流量,一旦流量过大,超过其网络负载,时间一长,缓存空间不够的时候数据丢失
[/Quote]
ding
cdcjk 2011-02-22
  • 打赏
  • 举报
回复
这样你还可以显示个进度条
超银 2011-02-22
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 wuyq11 的回复:]
分包发送
控制每次send的时间间隔。
有必须的话可以采用异步响应的试,等收到对方的响应之后再传下一部分。
TCP的连接控制协议只能在一定范围内控制流量,一旦流量过大,超过其网络负载,时间一长,缓存空间不够的时候数据丢失
[/Quote]
++
_三皮_ 2011-02-22
  • 打赏
  • 举报
回复
把文件分包,搞个进度条。可以定义自己的服务器到客户端的协议。
bdmh 2011-02-22
  • 打赏
  • 举报
回复
你得分包呀,每次发多少,先发一个总长度过去,然后每次接受一部分,一直等到接收完毕整个长度,这样你还可以显示个进度条
wuyq11 2011-02-22
  • 打赏
  • 举报
回复
分包发送
控制每次send的时间间隔。
有必须的话可以采用异步响应的试,等收到对方的响应之后再传下一部分。
TCP的连接控制协议只能在一定范围内控制流量,一旦流量过大,超过其网络负载,时间一长,缓存空间不够的时候数据丢失
vrhero 2011-02-22
  • 打赏
  • 举报
回复
窗体就未响应了?关窗体什么事?难道你不是用异步通讯或者后台线程的?

111,094

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • AIGC Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧