NSManagedObjectContextObjectsDidChangeNotification не всегда вызывается мгновенно - PullRequest
6 голосов
/ 12 октября 2011

У меня есть приложение Mac, использующее NSPersistentDocument. Я хочу получать уведомления при удалении объектов, чтобы сохранить эту информацию с помощью основных данных. Поэтому я слушаю NSManagedObjectContextObjectsDidChangeNotification. Часто он вызывается мгновенно, когда объекты удаляются, но иногда он вызывается только после сохранения постоянного документа, когда все удаленные объекты не были уведомлены ранее. Поскольку я хочу позволить пользователю напрямую экспортировать все существующие объекты (а не удаленные), что мне нужно сделать, чтобы немедленно получить уведомление о сохранении информации об удалении, или мне нужно использовать ее по-другому?

1 Ответ

9 голосов
/ 13 октября 2011

NSManagedObjectContextObjectsDidChangeNotification больше не выдается так часто и быстро на 10.7, как на 10.6. Вы можете заставить Core Data выдать уведомление (при условии, что есть изменения), вызвав -[NSManagedObjectContext processPendingChanges].

...