我正在使用downloadTask of URLSession下载一个大文件。我面临的问题是如何提供暂停和恢复功能。我已经读过使用resumeData取消downloadTask会返回resumeData,可以在下次恢复下载时使用。但对于一个非常大的文件,这个resumeData可能非常大(我认为。取决于文件大小,在什么阶段下载暂停,它可能非常大)。我如何坚持这个大的resumeData,以便我可以在下次恢复下载时使用它。 此外,可以同时进行多次下载,这会更多地增加同样的问题。
答案 0 :(得分:2)
简历数据blob 不包含实际接收的数据。如果是这样,您将无法继续在32位架构上下载多GB文件。
它包含的是一堆传输元数据:
它可能只是磁盘上包含上面列出的内容的元数据文件的URL。我不确定是哪一个。
无论哪种方式,你都不会得到一个数千兆字节resumeData
的blob。那将是毁灭性的。下载任务的重点是它下载到磁盘而不是内存。