我正在尝试以不会冻结主 UI 的方式组织多个图像(几百个)的后台下载,并且我将能够控制同时下载的数量。
第一次尝试是使用串行调度队列,它失败了,因为它虽然串行跨越线程,但队列块中的同步下载代码将同时执行,从而产生错误数量(服务器将简单地丢弃大部分此类连接)。
问题是——如何组织这个后台下载?用尽可能多的下载作业填充调度队列是否更好,然后在队列块中编写同步下载例程,并在完成下载后跨越其他批量?
有没有更好或更自然的方法来做到这一点?
使用NSOperationQueue。还有一个很好的教程:http ://www.raywenderlich.com/19788/how-to-use-nsoperations-and-nsoperationqueues