首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > asp.net >

求快速上载多张远程图片保存到本地的方法

2012-08-25 
求快速下载多张远程图片保存到本地的方法有已知的远程图片URL列表数组(20-30个图片地址),现需要将其下载到

求快速下载多张远程图片保存到本地的方法
有已知的远程图片URL列表数组(20-30个图片地址),现需要将其下载到本地服务器上,并将保存的图片路径存入数据库中。

我现在是单个单个的读取下载,再将其路径保存到数据库.

这种方式很慢,

在网上看到说多线程、异步下载速度快,由于还不会这技术,现求示例代码

[解决办法]
WebClient.DownloadFile()
本身支持异步。
[解决办法]
在你的.net2.0下,要等待线程全都结束,然后继续进行后边处理,其实要比使用.net4.0麻烦不少。

首先现在的任务复杂了,简单地一个“下载一个文件”方法根本不能处理,因为它需要本地路径,还要懂得相互协同,所以需要增加两个属性,这样我们可以把一个方法“重构”为一个class:

C# code
public class 下载任务{    public string result = null;    public AutoResetEvent gate;   //用来同步阻塞主线程    public void 下载一个文件(object url)    {        Console.WriteLine("计算{0}", url);        Thread.Sleep(10);        //......你的下载代码,根据this.url下载文件,并且将生成的本地文件路径写入result        result = string.Format("计算{0}的结果", url);        gate.Set();    }} 

热点排行