Я видел много раз, когда люди использовали много managedObjectContext, но помимо использования диспетчера Undo, какова реальная причина использования multipleManagedObjectContext? Почему полезно использовать более одного? Не могли бы вы показать несколько примеров?Контент с несколькими управляемыми объектами
1
A
ответ
1
Контексты управляемых объектов не являются потокобезопасными, поэтому, если вам когда-либо понадобится выполнять какие-либо фоновые работы с вашими объектами Coredata (то есть с длительной функцией импорта/экспорта без блокировки основного пользовательского интерфейса), вы захотите сделать это на фоновый поток.
В этих случаях вам нужно будет создать новый контекст управляемого объекта в фоновом потоке, выполнить итерацию в своей операции со связью, а затем уведомить основной контекст ваших изменений.
Вы можете найти пример того, как это могло бы работать здесь Core Data and threads/Grand Central Dispatch
Ответ совершенно верно, но NSManagedObjectContexts действительно поточно, и иметь больше контекста для не блокирует UI не имхо ничего общего с безопасностью нитками. В этом случае, когда требуется обновить больше контекста, объектом блокировки или синхронизации является координатор хранилища сохранения. – Leonardo
Извините, но ваш комментарий не имеет никакого смысла. – Rog
Что такое производительность пользовательского интерфейса и безопасность потоков при работе с фоновым рисунком. – Leonardo