多线程分块传输,急啊

xyuanzhi 2005-08-14 04:37:23
我要实现一个文件传输,用于游戏的在线升级,因此请求传输的用户会很多,而且文件会很大,可能超过100MB。
想采用多线程分块传输(每个线程负责一个分块的传输),支持断点续传。
请问如何实现?(传输协议是自定义的,不是ftp,或http)

一个用户分配2个传输线程,将文件分成2个分块传输对应于这两个线程。

请问这个多线程是如何建立的,是服务器收到传输文件的请求后,建立2个发送线程,而客户端只有一个线程用于接受吗?
用户很多的话,是否还得在服务器端建立线程池。

如果采用Directplay有什么好的方案吗,我的头都大了
...全文
198 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
DentistryDoctor 2005-08-16
  • 打赏
  • 举报
回复
客户端需要保存下载的状态信息,服务器端发送数据需要包含偏移及每个数据包的大小等信息。

如果用户很多还可以考虑使用些P2P的技术。
etre 2005-08-16
  • 打赏
  • 举报
回复
用BT吧,我朋友用BT做了一个专门的游戏下载包啊.需要的留email
zhxk 2005-08-16
  • 打赏
  • 举报
回复
能用现有资源就用现有资源,祝你成功
microyzy 2005-08-16
  • 打赏
  • 举报
回复
对,干嘛不用现成的服务器,然后做一个客户端
softrain 2005-08-15
  • 打赏
  • 举报
回复
用BT的下载方式吧,可以做个简易的BT下载工具,这需要一个服务器端软件
xyuanzhi 2005-08-14
  • 打赏
  • 举报
回复
一个Socket(即一个连接)上使用2个线程不可以的吗?veryfunny()
dirdirdir3 2005-08-14
  • 打赏
  • 举报
回复
数据量大,完成端口也没有什么用吧。
建议使用bt的形式,如魔兽世界.
veryfunny 2005-08-14
  • 打赏
  • 举报
回复
1.如果服务器有两个线程分别发送,那客户端也要两个线程接收,因为分属不同的连接.
2.用户很多的话此方案不具可行性,建议采用完成端口.
3.建议研究其它游戏的更新方式,用P2P的也有不少.

18,356

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 网络编程
c++c语言开发语言 技术论坛(原bbs)
社区管理员
  • 网络编程
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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