0

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

我的队列提交方法是:

-(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;
    });
}

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

4

1 回答 1

2

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

UIApplication:beginBackgroundTaskWithExpirationHandler:

移出前台后继续执行

于 2012-06-19T19:52:11.273 回答