我需要更新coredata数据库中的很多对象。 我在一个单独的线程中执行此更新,以避免在此操作期间阻止用户界面并显示简单的HUD。 我可以有一些纠结的麻烦吗?
感谢
答案 0 :(得分:0)
请注意coredata不是线程保存。
Apple提供的可能解决方案:
为每个线程创建一个单独的托管对象上下文并共享一个 单个持久性存储协调器。这是 通常推荐的方法。
- 醇>
创建单独的托管对象上下文和持久性存储 每个线程的协调员。这种方法提供了更多 以更高的复杂性为代价的并发性(特别是如果 你需要在不同的上下文之间传递变化)和 增加内存使用量。
如果从后台线程更新模型时多次使用第一个选项。它似乎有效。