Отправлены операции сохранения в applicationDidEnterBackground:
Яблоко'документация "App States and Multitasking " (Раздел "Что делать при переходе на задний план ») скажем для сохранения, когда приложение переходит в фоновый режим:
Сохраните пользовательские данные и информацию о состоянии приложения. Все несохраненные изменения должны быть записаны на диск при входе в фоновый режим. Этот шаг необходим, потому что ваше приложение может быть тихо убито в фоновом режиме по ряду причин. Вы можете выполнить эту операцию из фонового потока по мере необходимости.
Когда я начинаю отправленную операцию, например для сохранения, которое занимает некоторое время вapplicationDidEnterBackground:
как следующее я неt получить вывод NSLog при нажатии кнопки home. После возврата в приложение появляется вывод NSLog.
- (void)applicationDidEnterBackground:(UIApplication *)application {
dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{
[self performOperation];
NSLog(@"Operation finished");
});
}
Могу ли я быть уверен, чтоperformOperation
метод был выполнен полностью или он прервался, когда приложение перешло в спящий режим?