11、Core Data 批量操作与网络请求实战指南

Core Data 批量操作与网络请求实战指南

1. Core Data 批量操作

在 Core Data 中, executeRequest 调用会返回一个 AnyObject ,我们需要清楚这个调用返回的具体内容。由于我们将 resultType 设置为 .UpdatedObjectIDsResultType ,所以可知返回的是一个数组。若调用失败,会在 do/catch 块中捕获并处理错误。此调用为阻塞调用,虽比将所有对象加载到内存、进行更改再保存回磁盘的方式快很多,但仍需一定时间,因此建议使用私有写入上下文的 API,而非与用户界面关联的上下文。

当对磁盘数据进行更改后,需通知 NSManagedObjectContext 实例。有两种基本方式:
- 手动刷新对象

func manuallyRefreshObjects(objectIDArray: [NSManagedObjectID]) {
    guard let moc = mainContext else {
        fatalError("Unexpected nil context")
    }
    moc.performBlockAndWait({
        for objectID in objectIDArray {
            guard let object = moc.obje
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值