【问题标题】:Help with loading large amount of data帮助加载大量数据
【发布时间】:2011-08-05 21:57:52
【问题描述】:

我有一个包含 500 个对象的数组,有人告诉我这不是一个聪明的主意,因为它需要大量的内存。有人告诉我,Core Data SQLite 对我来说只加载其中一个对象而不是一次加载所有对象会有好处。这是我的情况,我不确定核心数据是否可以在这里使用

我的数组基本上是选择一个随机的 Nib 文件来加载,程序选择一个随机的索引对象,然后去加载相应的 Nib 文件。

我能用核心数据做到这一点吗?似乎将所有对象一次全部加载到数组中是使其工作的唯一方法。有谁知道核心数据是否可以做这样的事情?

我对核心数据非常陌生,似乎对此很困惑。另外,如果有人可以向我指出一个众所周知的教程,那也很好:)

谢谢, 雅各布

【问题讨论】:

  • 你是说你有 500 个笔尖?
  • 哎呀。我说的很奇怪。不,我用随机零件加载一个。
  • 你能把你有500个的数据对象展示出来吗。
  • IIRC,它是“核心数据”“SQLite”。
  • 您是否发现您的字符串列表占用了您的应用程序中的大量空间?您可能会在其他地方泄漏内存。

标签: objective-c ios arrays core-data


【解决方案1】:

500 个对象并不多。即使是像UITableView 这样非常复杂的对象也有648 字节的实例大小,这个大小会随操作系统版本而变化,但你明白了。即使是您相当普通的课程也不会超过 1000 字节。留给你的内存不到半兆。

除此之外,您还必须在 ivars 中为对象添加空间。但我怀疑微不足道的 500 个对象是个问题。

您是否检查过日志以查看是否收到任何内存警告通知?

您是否使用 Instruments 运行该应用来衡量您对内存的实际影响?

在开始实施解决您可能没有的问题的解决方案之前,请完成所有这些操作。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-07-05
    • 2011-10-20
    • 1970-01-01
    • 2012-05-24
    • 1970-01-01
    • 2021-04-15
    • 2012-02-11
    • 2013-01-01
    相关资源
    最近更新 更多