丢弃 NSManagedObjects

Posted

技术标签:

【中文标题】丢弃 NSManagedObjects【英文标题】:Discarding NSManagedObjects 【发布时间】:2011-07-04 16:41:08 【问题描述】:

我在一个新线程中创建了一个新的托管对象上下文,并将一些对象插入其中。我可以通过不保存上下文来丢弃(只是忘记它们)它们吗?我的问题是:我开始了一个冗长的过程,它在开始时创建一些 NSManagedObjects 并在最后保存它们(将它们合并回主存储)。这发生在 NSOperation 中。我希望用户能够随时退出应用程序,而无需等待进程完成。我可以杀死操作并保存吗?我的理解是这是可能的,因为上下文不保存任何内容。对?

【问题讨论】:

【参考方案1】:

是的,您可以这样做,但如果后台操作处理任何用户数据,则不应该这样做。

MacOS 教师用户的 UI 语法期望他们的所有数据都将被保存,除非他们另有说明。

由于在绝大多数情况下保存几乎是即时的(从用户的角度来看),最好向后台操作发送通知,告诉它停止并保存。

【讨论】:

以上是关于丢弃 NSManagedObjects的主要内容,如果未能解决你的问题,请参考以下文章

cmd丢弃旧的副本啥意思

FFMPEG 无法丢弃媒体中的无效数据流。为啥它会留下来以及如何丢弃它?

如果未提交,如何撤消“丢弃”

为啥模板测试不丢弃片段?

检查 Facebook 上的共享帖子成功或丢弃

丢弃 NSManagedObjects