同时下载
本文关键字:下载 | 更新日期: 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
限制范围内。
您可能永远不想使用最大数量的可用并发下载,而是使用更少的下载,因此速度更快,用户体验更好。 对阻止下载的方案的代码处理越好,如果您愿意,可以尽可能多地最大化同时下载的连接。