现在有不少软件可实现多线程下载
.
如
NetAnts,JetCar
等
,
其实多线程下载的原理并不复杂
,
主要的两项技术就是多线程和断点下载。程序中开启多个线程,每个线程利用断点下载,分别下载文件的不同部分,下载完后合并,就可以了。多线程编程很多书已有介绍,这里不再重复,关于断点下载,
MFC
中提供的
CInternetFile
类可实现
HTTP
的断点下载,但无法实现
FTP
的断点下载。因此,我们只好从
FTP
协议中的命令入手,自己编写个
FTP
类,来实现多线程下载。本人编写的
CMultiFTP
类(在
WIN2000+IIS5
。
0
下测试成功)已在
优快云
发表。
FTP指令的详细信息,大家可从http://info.internet.isi.edu/in-notes/rfc/