2010-06-09 4 views

ответ

3

Когда неисправность «срабатывает», постоянные данные для экземпляра объекта, представленные ошибкой, вытягиваются из постоянного хранилища, и ошибка преобразуется в полный экземпляр. Если данные для экземпляра присутствуют в кеше строк NSPersistentStoreCoordinator, я считаю, что вместо этого используются данные в зависимости от времени, прошедшего с момента кэширования данных, и значения stalenessInterval для контекста управляемого объекта, содержащего ошибку. Если кешированные данные старше stalenessInterval, он извлекается из постоянного хранилища, даже если присутствует кешированная копия.

+0

Номенклатура восстанавливается от того, что можно было бы ожидать, что это будет. В обучении я называю ошибки как объект «призраком» и ошибаюсь как «материализацию», пока люди не примут эту идею. см. http://stackoverflow.com/questions/3006347/is-this-a-bug-in-the-documentation-existingobjectwithiderror-or-objectwithid/3007682#3007682 – TechZen

0

Обновленная документация NSIncrementalStore на самом деле описывает эту ситуацию. NSIncrementalStore - это интерфейс для написания своего собственного магазина, в магазине SQLite, который мы все знаем и любим, в основном реализует это.

Из Руководства по программированию Инкрементального Магазина: What is a fault? Из Руководства по программированию Ядра данных: Faulting and Uniquing

Смежные вопросы