将记录保存到核心数据需要太长时间,如何更快地插入它们?

时间:2011-08-08 10:41:38

标签: iphone objective-c ios ipad core-data

我在coreData DB中引入了一些对象。

问题在于它很慢(8-10秒),尽管我只引入了50条记录。

我是单独介绍这些记录,如果我一次性介绍它们,插入会更快吗?如果是,我该怎么办(将数组插入coreData)?;

欢迎任何其他coreData速度插入提示:)

2 个答案:

答案 0 :(得分:1)

我会使用Instruments并在您的插入操作上运行Profiler工具,看看实际上是什么减慢了它。我的猜测是,您在插入对象时执行某种反序列化或解析,或者是数据操作的其他常见减速之一。确保在优化之前确定了问题。

答案 1 :(得分:1)

只保存50个实体几秒钟就很奇怪了。在其上运行仪器,看看瓶颈在哪里。

如果可能的话,可以将您的Core Data代码分解为可以在Mac OS X目标上运行的测试,因为Instrumemts只有(Make)的配置文件Core Data for Mac OS X的特定且更好的模板一定要在http://bugreport.apple.com提交错误请求,以便将核心数据模板带到iOS应用程序中

如果它是一个无法移除的瓶颈,至少要确保在后台线程上执行此操作。