如果你有任何建议,我都是耳朵.
我们已经在Android中实现了这一策略,而进口需要大约2.5分钟,而在iOS上大约6分钟,不同设备上的硬件可比较.缩短进口时间对我们的用户至关重要,所以我在这个问题上没有妥协.在此先感谢您的帮助.
编辑:
这是我目前正在做的 – 我创建一个创建自己的上下文的NSOperation.我进口实体B,C和D首先保持每个实体类型的数组.然后我导入实体A,并使用谓词过滤实体B,C和以便将实体A与B,C和C中的适当实体相关联. D.我按照当前正在导入的实体类型,根据不同的优化间隔批量保存上下文.
我不只是导入到一个表,我导入许多相互关联的表.所以如果我导入实体B,我必须将实体B保留在内存中,或者在需要它时将实体B与实体A相关联
解决方法
好的,没办法.我们假设CD是这里工作的最佳工具(或者你现在不能改变).我的第一个想法是作弊.这是我早期的想法之一….
看到你可以快速地插入这些对象,没有关系.如果速度足够快,那么这是你的欺骗方式:首先不要存储实际的关系.存储描述关系的标识符的字符串列表.然后,一旦所有的东西被加载并且用户可以开始工作,随着时间的推移将字符串关系转换成后台的真实关系.每当你获得记录时,你需要检查是否有一个骗子属性仍然设置,如果是这样,你需要手动获取关系(然后清除骗子属性).
这并没有使进口更快,但它给人的幻觉更快,这就是iOS 90%的时间.您可能甚至必须阻止某些操作(如删除),直到您完成粘贴所有内容,但这可能还要比完全阻止用户更好.
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。