ios - 在崩溃前保存核心数据上下文

标签 ios core-data

例如,如果我们在 XCode 中点击“停止”,它将关闭应用程序,模仿崩溃行为。

但如果我的 Core Data Context 没有保存,当我返回时,数据将不存在。

  1. 有什么解决方法吗?

  2. 我应该在每次完成大操作时保存上下文吗?

谢谢。

最佳答案

根据我的经验,您应该在使用 Core Data 保存机制时确定正确的粒度。

恕我直言(也许其他人可能有不同意见)没有可遵循的标准。我的经验法则是考虑两个不同的方面。 用户性能

在第一种情况下,您应该在用户执行关键操作时保存。例如用户在表单中插入了很多值,因此他希望不再插入它们。关于第二个方面,保存操作可能会影响应用程序的性能。如果您经常将更改写入磁盘,则应用程序的响应速度会降低。相反,在内存中拥有如此多的对象可能会导致内存警告(这将导致 Core Data 采取特定行为)。

权衡可能是使用后台操作来保存更改或利用新的核心数据 API。显然,以前的规则仍然有效。

关于ios - 在崩溃前保存核心数据上下文,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15210276/

相关文章:

ios - 直接从 UIButton 操作添加 subview ,而无需调用方法

ios - 在 Swift 中编辑 TableViewCell 的内容列表

debugging - 填充核心数据数据库时首次启动时发生崩溃

ios核心数据导入大量数据

swift - 核心数据: Transformable Type or To-Many Relationship?

ios - AVPlayer 键值的 currentItem 是否可观察?

ios - Swift - 无法在 Safari 中打开本地文件

ios - 如何使用 PHAsset 在 iOS 8 中获取图像或视频的 MIME 类型?

ios - iTunes connect - 我在哪里可以看到 TestFlight 构建的崩溃报告?

iphone - 每天包含部分的表格 View (带有核心数据)