ios - NSFetchRequest 返回旧数据,即使数据库已更新

标签 ios multithreading nsfetchrequest

我正在开发一个使用 Coredata 的多线程应用程序。

当我在一个线程上保存一些数据时,它会进入数据库,但是当我尝试在数据保存到数据库后从另一个线程获取它时,获取请求返回旧数据。

关于如何解决这个问题有什么建议吗?

最佳答案

由于 MOC 合并政策,这是一个问题。 我之前使用过 NSMergeByPropertyObjectTrumpMergePolicy 并切换到 NSMergeByPropertyStoreTrumpMergePolicy 解决了这个问题。请记住,这应该根据您的需要进行选择。

关于ios - NSFetchRequest 返回旧数据,即使数据库已更新,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22456959/

相关文章:

objective-c - 核心数据未正确重置数据库

ios - SpriteKit 接头

ios - 自动旋转横向/纵向 View

ios - 呈现 View Controller 时状态恢复不起作用?

java - 从 fragment 在 ui 线程上运行任务

java - Spring WebFlux 和 Reactor 的线程模型

c++ - 探查器输出中线程并发开销时间的含义是什么?

swift - CoreData 或 Outlet 集合的轻微泄漏

ios - Objective-C 中按一个属性对自定义对象的 NSSet 进行排序

ios - resultType 设置为 NSDictionaryResultType 的 NSFetchRequest 并保存更改的对象