同时下载

本文关键字:下载 | 更新日期: 2023-09-27 18:33:34

我正在尝试构建一个移动应用程序(iOS和Windows(,该应用程序可以从远程服务器下载音频文件列表。

在使用不同的线程同时下载文件之前,是否有任何需要考虑的标准。(基本上我需要同时下载 7 个文件。

我发现在iOS的情况下有一个参数

"NSOperationQueueDefaultMaxConcurrentOperationCount",它决定 允许的并发操作计数。还有其他参数吗 我在为 iOS/Windows 开发时需要考虑的

请指导我,我是移动开发的新手。

问候罗伯特

同时下载

有趣的是

,这里指出NSOperationQueueDefaultMaxConcurrentOperationCount最大下载操作数由内核在运行时管理,因此此值可以通过应用程序使用情况动态更改。 我想如果无法下载,但是会抛出一个异常,您可以处理。

WindowsPhone 8上,最大限制是从这里一次 6 个活动请求。

对于WindowsPhone 8.1/UWP您可以使用 BackgroundDownloader ,并让它为您管理事情。 据报道,从此处只能同时下载 5 次。

尽管平台细节可能会限制/打开同时下载连接,但我会创建您自己的DownloadManager类,允许您继续添加下载任务,而不管当前的下载队列如何。 然后,该管理器类将能够为您处理整个下载过程,包括错误处理和跟踪特定下载/启动新下载/下载完成/失败的通知。

在其中,您还可以为同时连接的数量设置自己的限制,并根据每个平台所需的值来设置起始值,当然在OS限制范围内。

为了安全起见,

您可能永远不想使用最大数量的可用并发下载,而是使用更少的下载,因此速度更快,用户体验更好。 对阻止下载的方案的代码处理越好,如果您愿意,可以尽可能多地最大化同时下载的连接。