【发布时间】:2017-11-03 20:11:46
【问题描述】:
如果我在暂停模式下保持两个 FileDownload(在下面的链接中找到代码)并且如果我启动 Filedownload 的第三个第三个实例,我会收到超时错误。
我正在开发一个 WPF 应用程序,我需要从 CDN 服务器下载多个 .zip 文件。我正在使用以下代码下载文件。
https://www.codeproject.com/Articles/35954/C-NET-Background-File-Downloader?msg=5402177#xx5402177xx
就我而言,我必须同时下载多个文件并显示每个文件下载的进度。每次用户下载文件时,我都会创建一个 FileDownloader(在下面的链接中找到代码)类的实例。
当我在 Puase 模式下保留两个 FileDownloader 实例以及启动第三个实例时,我遇到了操作超时错误。第三个实例持续等待 webResp = (HttpWebResponse)webReq.GetResponse();一段时间后它会抛出操作超时错误。
如果我尝试通过 chrome 浏览器下载相同的 zip 文件,并且如果保持第一个暂停,则第三个文件仍在下载。
任何建议,如何解决问题?
【问题讨论】:
-
请给我们minimal reproducible example。不要只提供一些链接,而是向我们展示您的相关代码。 (顺便说一句,不要使用
BackgroundWorkers,除非你被 .NET 2.0 卡住了。改用 TPL。) -
对不起,我应该提供困扰我的代码。我用尽可能少的细节创建了另一个问题。希望现在很容易理解这个问题。这是问题的链接。 link
标签: wpf multithreading timeout httpwebrequest backgroundworker