2

在我的iPad應用程序中,我使用多線程從我的數據庫中讀取數據,因此我使用不同manged對象的上下文所解釋Fred McCann's blogCoreData多線程刪除

我現在面臨的問題是,同時從數據庫中刪除的項目。當我嘗試刪除時,出現managedObjectContext無法刪除另一個objectContext數據的錯誤。我該如何解決這個問題?

如果有人能幫我解決這個問題,那將會很棒。

回答

2

您需要傳遞objectId,然後從另一個上下文中獲取該對象。

NSManagedObject *object = // get the object... 
NSManagedObjectID *objectID = object.objectID; 
// Pass to other context on other thread... 
// ... 
NSManagedObject *sameObjectDifferentContext = [managedObjectContext objectWithID:objectID]