多线程下载(FtpWebRequest)
2010-04-21 18:04
211 查看
网上没找到FtpWebRequest多线程下载的资料,自己写了一个。但没达到预期效果,下面是测试结果:
//1线程下载133M 18秒
//5线程 下载133M 40秒
//单线程 下载133M 12秒
期望高手不吝赐教,下面是完整代码
首先命名空间
using System.Collections.Generic;
using System.IO;
using System.Threading;
using System.Net;
类主体:
代码
MultiFtpService multiFtp = new MultiFtpService("172.18.118.106", "ff", "ff",1);
string path = "10031544820/20100310/4014200";
DateTime dt = DateTime.Now;
string fileName = "CX.IMG";
//ftp.Download(path + "/" + fileName, pathdir + "/" + path + "/" + fileName, true);
multiFtp.FileUrl = path + "/" + fileName;
multiFtp.SavePath = pathdir + "/" + path;
multiFtp.SaveFileName = fileName.Substring(0, fileName.IndexOf('.'));
multiFtp.SaveExtName = fileName.Substring(fileName.IndexOf('.'));
multiFtp.Start();
while (!multiFtp.IsComplete)
{
System.Threading.Thread.Sleep(1);
}
MessageBox.Show("完成:前时间为" + dt.ToString("yyyy-MM-dd hh:mm:ss") + "\n" + "现在时间为" + DateTime.Now.ToString("yyyy-MM-dd hh:mm:ss"));
//1线程下载133M 18秒
//5线程 下载133M 40秒
//单线程 下载133M 12秒
期望高手不吝赐教,下面是完整代码
首先命名空间
using System.Collections.Generic;
using System.IO;
using System.Threading;
using System.Net;
类主体:
代码
MultiFtpService multiFtp = new MultiFtpService("172.18.118.106", "ff", "ff",1);
string path = "10031544820/20100310/4014200";
DateTime dt = DateTime.Now;
string fileName = "CX.IMG";
//ftp.Download(path + "/" + fileName, pathdir + "/" + path + "/" + fileName, true);
multiFtp.FileUrl = path + "/" + fileName;
multiFtp.SavePath = pathdir + "/" + path;
multiFtp.SaveFileName = fileName.Substring(0, fileName.IndexOf('.'));
multiFtp.SaveExtName = fileName.Substring(fileName.IndexOf('.'));
multiFtp.Start();
while (!multiFtp.IsComplete)
{
System.Threading.Thread.Sleep(1);
}
MessageBox.Show("完成:前时间为" + dt.ToString("yyyy-MM-dd hh:mm:ss") + "\n" + "现在时间为" + DateTime.Now.ToString("yyyy-MM-dd hh:mm:ss"));
相关文章推荐
- 多线程下载(FtpWebRequest)
- FtpWebRequest 上传文件
- C# FTP FtpWebRequest UsePassive 属性
- HttpWebRequest 下载网页Html代码 下载文件(Remote和FTP)Get方式
- “WebRequestMethods.Ftp.DownloadFile不能保留文件最后修改时间”的解决方法
- c# WebRequest或HttpWebRequest多线程下载一定要注意到问题
- FtpWebRequest上传、下载文件
- 使用asp.net FtpWebRequest 实现FTP常用功能
- 惊天大Bug?让人呕血的FtpWebRequest
- 如何用FtpWebRequest 传送巨大文件
- c#_实现FTP方法(一) --- FtpWebRequest
- c# FTP的两种实现方法(一)-FtpWebRequest
- How to use FtpWebRequest in asp.net
- ASP.net:Ftp操作-----FtpWebRequest
- FtpWebRequest FTP异步下载、异步上传文件
- 使用.net FtpWebRequest 实现FTP常用功能
- 【12】FtpWebRequest上传下载
- 使用.net FtpWebRequest 实现FTP常用功能
- 如何解决FtpWebRequest基础连接已经关闭;接收时发生错误(ZZ)
- [copy] FtpWebRequest Behavior Research