我创建了一个从网站(不是我的网站)检索数据并保存到核心数据的应用程序。我想在新记录插入核心数据时创建通知。我认为检索数据方法和添加对象方法应该在后台运行,但我该怎么做呢?任何示例代码?
答案 0 :(得分:1)
在你跳到这个之前,你真的应该建立一个对多线程编程的基本理解,而这是一个比我们在答案中可以合理覆盖的更大的主题。首先阅读Apple关于主题的文档:
答案 1 :(得分:1)
这不容易做到。在后台线程中使用Core Data要求您为该线程设置单独的上下文。我建议你先阅读Core Data Concurrency Guide。另请阅读Caleb链接的指南。
一旦你弄清楚如何让你的后台上下文运行,你很可能想订阅NSManagedObjectContextDidSaveNotification来更新主线程上的UI。
答案 2 :(得分:0)
[self performSelectorInBackground:@selector(yourMethod:) withObject:];
答案 3 :(得分:0)
您必须执行异步请求[将不会在主线程上执行],并且您将在委托方法中收到有关请求完成/错误/超时的通知,具体取决于你正在使用的图书馆。
我有使用RestKit的经验,您会在the repository找到大量示例。
答案 4 :(得分:0)
您提到在将数据插入CoreData时创建通知。难道你不能只注意CoreData发送的通知,比如NSManagedObjectContextDidSaveNotification?