我正在寻找一种内存有效的方法,只从获取结果集中获取一行。这必须是随机的。
我想使用[context countForFetchRequest:fetch error:nil];
并获得介于0和之间的int随机值,并且偏移+将获取限制为1。但我无法确定它是否为每个重要项目分配内存。
"计数"轻量级的操作?或者它是否需要在能够计算它们之前在上下文中实例化对象?
答案 0 :(得分:2)
documentation有点不清楚,但它包含“给定获取请求将返回的对象数”这一短语。此外,Core Data倾向于使count
之类的东西非常轻量级 - 例如,实体实例允许您调用count
以找出多对多关系结束时的对象数量而无需实例化所有这些对象或解雇那个错误。我会说它去做,但是自己进行描述 - 不要过早优化!