![]() |
1
12
你的第一个问题表明你误解了
回答你的第二个问题,答案是“是”。过时间隔适用于上下文,而不是持久存储。 那么,核心数据是否适合缓存来自远程数据库服务器的数据?不是真的。虽然bill bumgarner(一位苹果工程师)暗示这是可能的,但我发现在我自己的代码中,将缓存与核心数据对象图形管理分离要容易得多。使用核心数据来管理对象图和方便绑定到控制器/UI层仍然非常好。因此,我的策略是从数据库服务器中提取数据并将其缓存在我自己的数据结构中(OS X 10.6中的libcache和nscache可能是一个很好的起点)。然后决定在对象图中需要什么,并将其迁移到核心数据栈(由内存中的持久存储支持)。您必须自己处理来自数据库服务器的更改通知或轮询。当数据库中的数据更改(或用户查询更改等)时,我只告诉所有编辑器完成编辑,然后擦除上下文并从(可能)更新的缓存中重新生成它。 |
|
user8977455 · coredata中的更新不正确 6 年前 |
|
ashwin nath · 如何持久化tableview行? 6 年前 |
![]() |
Mark J · 如何获取扩展以返回子类类型[重复] 6 年前 |
![]() |
user3227546 · 基于搜索文本筛选核心数据项 6 年前 |