Мне было интересно, есть ли способ разделить NSManagedObject
между двумя или более NSManagedObjectContext
объектами, работающими в одном потоке.
У меня следующая проблема: у меня один основной контекст, общий для всего моего кода в приложении, и несколько разных контекстов, которые создаются для каждого запроса удаленной выборки, который я выдаю. (Я создал собственный класс, который выбирает удаленно и вставляет все объекты, найденные на сервере, в его NSManagedObjectContext
). Эти запросы на выборку могут выполняться одновременно, поскольку они используют NSURLConnection
объекты, которые могут заканчиваться в разное время. Если один и тот же удаленный объект выбирается разными подключениями, я получу дубликаты в момент сохранения и объединения контекста с основным. (То есть объекты, имеющие одинаковый удаленный идентификатор, но отличающийся objectID
).
Одним из возможных решений было бы сохранить (и таким образом сохранить) каждый объект, как только он будет создан, но я не могу этого сделать, поскольку у него могут быть некоторые отношения, которые, возможно, еще не были заполнены и не будут проверяться в течение сохранить операцию.
Я действительно с нетерпением жду метода, который позволит вам совместно использовать один и тот же непостоянный экземпляр объекта в контексте. Если кто-нибудь сталкивался с этой проблемой и нашел решение, я был бы рад узнать!