使用Web客户端下载多线程文件

时间:2012-07-11 18:11:59

标签: c# multithreading webclient

我遇到需要从C#windows服务应用程序从webdav服务器下载大量(~1 GB)媒体文件的情况。我正在考虑哪种方法更好:

  • 使用WebClient异步方法通过主线程上的回调下载存储在数组中的文件,以通知下载完成。可以使用手动重置事件进行同步
  • 使用后台工作程序和Web客户端同步下载方法
  • 使用ThreadPool和Web客户端同步下载方法
  • 使用手动线程和Web客户端同步下载方法

我尝试使用Web客户端异步下载API,但它们似乎没有阻塞,因为在初始化媒体下载并抛出操作超时后,在主线程上调用Web服务时,我的主线程似乎被阻止最终,媒体文件不是平行下载,而是逐个下载,如下载文件夹中所见。

Waht将是你的建议。

0 个答案:

没有答案