首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >核心数据和较差的性能

核心数据和较差的性能
EN

Stack Overflow用户
提问于 2010-06-07 16:13:14
回答 1查看 482关注 0票数 3

我已经研究这个问题有一段时间了,我愿意接受任何最佳实践/建议。

示例

所以我创建了一个示例Core数据应用程序。该应用程序基本上是对AddressBook应用程序的模仿。我有以下实体:团体,联系,地址,电话,电子邮件,网页,日期。

正如您可能猜测的那样,一个组可以有多个联系人,一个联系人可以在多个组中。联系人还可以有多个地址、电话、电子邮件、网页和日期。

我基本上从AddressBook导入了大约600个联系人到这个应用程序中。用户界面相对简单.左边是组/类别列表,右边是NSCollectionView或NSTableView,根据所选组显示联系人列表。(集合视图或表view...as增加了显示这两个视图的能力,这两个视图都绑定到NSArrayController)。

我使用的组元素是代码,而不是Interface,因为我想使用类似事物的侧边栏,这样做要容易得多。

问题

其中一个类别包含所有联系人,而另一个类别仅包含2个联系人。当我选择具有所有联系人的类别时,需要8-10秒的时间来填充集合或表视图。然而,在AddressBook本身中做同样的事情是非常迅速的,几乎是即时的。我正在使用SQLLite存储类型,并且尝试过使用许多不同的方法,包括尝试通过仪器诊断问题,但是没有什么效果。

我尝试过将谓词设置为联系人数组控制器的defaultFetchPredicate,而不是设置过滤器谓词,但这是行不通的。

我尝试过preFetching和错误,但我不确定我是否做得对,也不确定如果Interface处理联系人的NSArrayController,如何完成它。

另一个示例

我还试着下载一个样例核心数据app...while它有一个比我做的更简单的关系模型(基本上是一个分子有原子对象和一个原子对象有元素对象),我插入了65000条记录,它表现得很有魅力。

问题

我基本上是碰壁了,我想知道是否还有其他人知道为什么会发生这种情况,以及解决/克服/避免这类问题的最佳方法?

谢谢!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2010-06-11 08:05:25

事实证明,实际上是NSCollectionView放慢了速度。我认为创建和操作视图x集合视图的数量会增加大量开销。IKImageBrowserView本可以被使用,但它不是我要找的。

最后,我更改了应用程序布局以解决这个问题。

谢谢大家!

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2991157

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档