异步下载与同步下载多个文件

马特·库珀

我有一个iOS应用程序,需要在其中启动播放器之前下载多个音频文件。(需要首先下载所有文件,因为它们都作为多轨歌曲同时播放。)

我知道从主线程异步下载的优点(不阻止UI等),但我想知道,与在同一后台线程上异步下载每个文件是否有任何好处。如果有差异,哪种方法将最快下载所有文件?

rmaddy

这实际上是网络带宽的问题。如果您尝试同时下载10个文件,则很可能比一次下载相同的10个文件所花的时间更长(甚至更长)。

用户的Internet连接每秒仅允许这么多的数据。假设每次下载都已最大化,则一次下载多个文件意味着必须在文件之间分配最大吞吐量。

最好的选择是设置并发操作队列。将每个下载排队作为单独的操作。然后尝试通过设置操作队列来支持1到n个并发操作中的任何一个。在不同的时间多次进行测试,并跟踪完成所有下载所需的时间。查看哪种结果可获得最佳的总体平均水平。请记住,使用2G蜂窝连接速度较慢的用户与使用超快速家庭Wi-Fi连接的用户所得到的结果可能会有所不同。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章