1

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

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

我尝试使用 Web 客户端异步下载 API,但它们似乎不是非阻塞的,因为在初始化媒体下载后在主线程上调用 Web 服务时我的主线程似乎被阻塞并最终引发操作超时并且媒体文件不是并行下载的,而是在下载文件夹中一一下载。

什么是你的建议。

4

0 回答 0