【发布时间】:2011-03-29 00:43:44
【问题描述】:
这段代码运行良好:
Parallel.ForEach(photos, item =>
{
WebClient webClient = new WebClient();
webClient.DownloadFile(item.src_big, "C:\\pic" + item.ID + ".jpg");
});
虽然此代码抛出“WebClient 请求期间发生异常”。 :
foreach (Photo p in photos)
{
Task.Factory.StartNew(() =>
{
WebClient webClient = new WebClient();
webClient.DownloadFile(p.src_big, "C:\\pic" + p.ID + ".jpg");
});
}
我有两个问题:
1) 在第一个代码中,我使用多个 WebClient 对象进行下载。第二个代码也是如此,为什么会出现异常?
2)我正在尝试这两个版本来确定下载照片的最快方式是什么,在我的例子中是从 facebook 下载的。我想知道是否有另一种更快的方法,也许是 WebRequest.Create() ?
【问题讨论】:
-
对 2 的回答是我正在使用相同的程序,并且它对我并行工作正常。foreach 大大减少了时间
标签: c# webclient parallel-processing