iOS持续完成任务

时间:2012-06-19 17:29:42

标签: ios

我正在为我正在处理的应用程序实现提交队列。此应用程序旨在响应网络可用性的变化。如果队列中有对象,并且网络连接可用,则应用程序将开始提交队列中的对象,这在应用程序位于前台时非常有效。我想做的是,当应用程序进入后台并且队列正在提交时,队列提交会继续,直到它尝试提交所有这些内容为止。

队列提交的方法是:

-(void)submitAll {
    dispatch_async( dispatch_get_global_queue(DISPTACH_PRIOROITY_DEFAULT,0) ^(void){
        self.submitting = TRUE;
        for ( id queueObject in theQueue ) {
             [self submitQueueObject:queueObject];
        }
        self.submitting = FALSE;
    });
}

当应用程序进入后台时,是否可以继续上述循环?

1 个答案:

答案 0 :(得分:2)

如果您可以在大约10分钟内完成,那么您可以使用

UIApplication:beginBackgroundTaskWithExpirationHandler:

在离开前景后继续执行