Che*_*eng 6 core-data ios swift
通常需要有后台上下文来执行写操作。
// Set automaticallyMergesChangesFromParent to true
persistentContainer.viewContext.automaticallyMergesChangesFromParent = true
persistentContainer.performBackgroundTask { backgroundcontext in
// Do your work...
let object = backgroundContext.object(with: restaurant.objectID)
backgroundContext.delete(object)
// Save changes to persistent store, update viewContext and notify fetched results controller
try? backgroundContext.save()
}
Run Code Online (Sandbox Code Playgroud)
我对 很困惑automaticallyMergesChangesFromParent。
viewContext因为,我对(与主队列关联的托管对象上下文) 和进行了以下观察backgroundContext。
viewContext.parent为零backgroundContext.parent为零我的问题是
viewContext.automaticallyMergesChangesFromParent = true,以便viewContext接收来自 的更改backgroundContext,这是否意味着backgroundContext是 的父级viewContext?viewContext.automaticallyMergesChangesFromParent = true指的是哪位家长?如果父项为零,则为零,不存在隐式父项关系。当父上下文为零时,automaticallyMergesChangesFromParent自动合并保存到其持久存储协调器的更改。它不是父上下文,但它在这里做了一些类似父上下文的事情。只要两个上下文使用相同的持久存储协调器(或相同的NSPersistentContainer),那么这将自动合并更改,而无需父上下文关系。
| 归档时间: |
|
| 查看次数: |
709 次 |
| 最近记录: |