ios - nsoperationqueue - 从服务器下载图像

时间:2011-12-29 06:36:25

标签: ios nsoperationqueue

我想在我的应用中使用NSOperationQueue并开始从服务器下载图像。 如果我的应用程序进入后台或被终止,NSOperationQueue是否仍会继续下载它们?

1 个答案:

答案 0 :(得分:0)

不,当应用移动到后台时,NSOperationQueue将无法继续工作。您需要使用方法beginBackgroundTaskWithExpirationHandler明确地执行此操作。

Technical Note TN2277 - Networking and Multitasking

中介绍了这一点

另请参阅iOS App Programming Guide,特别是关于应用程序状态和多任务处理的部分。

顺便说一句,我是否可以建议您使用AFNetworking库。它为您处理了很多这方面的功能。具体来说,每个类都是NSOperation的子类。

此外,它已在AFImageRequestOperation中有一个图片下载程序类。所以这应该对你非常有用。 AFImageRequestOperationAFURLConnectionOperation的子类,因此您可以访问方法setShouldExecuteAsBackgroundTaskWithExpirationHandler

当然,所有这些都与多任务有关,因此它仅适用于iOS 4.0及更高版本。