applicationDidEnterBackground: и время записи в базу данных - PullRequest
4 голосов
/ 22 января 2011

когда приложение закрывается, я записываю данные в базу данных.

Как и в приложении iOS 4WillTerminate: не вызывается, я поместил одинаковый код сохранения как в applicationDidEnterBackground:, так и в applicationWillTerminate:

Я прочитал, что задача, выполняемая в applicationDidEnterBackground: должна занять некоторое время.

Итак, если запись на БД занимает больше времени, как я могу справиться с этим?

1 Ответ

4 голосов
/ 23 января 2011

Вы получаете 5 секунд, чтобы выполнить любое сохранение и т. Д. В applicationDidEnterBackground: метод.

Если вам нужно более 5 секунд, есть этот метод UIApplication, чтобы запросить фоновый поток, который позволит больше времени делать все, что вам нужно:это:

http://developer.apple.com/library/ios/documentation/iPhone/Conceptual/iPhoneOSProgrammingGuide/BackgroundExecution/BackgroundExecution.html#//apple_ref/doc/uid/TP40007072-CH5-SW12

...