没有使用AFNetworking&使用ObjectivRecord创建/更新(核心数据)

时间:2014-03-14 09:26:22

标签: ios core-data concurrency afnetworking exc-bad-access

我正在使用AFNetworking从服务器获取JSON对象。然后我使用ObjectiveRecord创建数据对象(Core Data)。有时我会搜索和更新对象。这在我的iPhone 5上也适用于模拟器。但是当使用iPhone 5S时它不起作用。在执行EXC_BAD_ACCESS时(在ObjectiveRecord代码中),我得到insertNewObjectForEntityForName

阅读了很多关于核心数据和线程的文章,这让我相信我应该使用私有上下文,使用NSPrivateQueueConcurrencyType

我使用建议的方法在ObjectiveRecord中设置它,即:

NSManagedObjectContext *newContext = [[NSManagedObjectContext alloc]   initWithConcurrencyType:NSPrivateQueueConcurrencyType];
newContext.persistentStoreCoordinator = [[CoreDataManager instance] persistentStoreCoordinator];

然后我使用createInContext:在AFNetworking的完成块中创建我的对象。

我在SO上发现了类似的问题,但它没有使用ObjectiveRecord:Get a number of resources asynchronously and "asynchronously" save them to a database. Which good pattern to use? (AFNetworking, Core Data)

但是我没有让它发挥作用。我究竟做错了什么?还是我走错了路?

1 个答案:

答案 0 :(得分:0)

我没有让这个工作。可能是因为我在核心数据方面的技能还不够。因此我改为MagicalRecord。在ObjectiveRecord之外的多线程环境中理解如何使用它更容易。很遗憾没有关于如何在多线程环境中使用ObjectiveRecord的好文章。