iPhone上的NSFetchRequest上的setFetchBatchSize

时间:2011-03-09 11:42:13

标签: iphone cocoa cocoa-touch core-data nsfetchrequest

我不明白setFetchBatchSize的含义。

在下面的代码中,我将获取批处理大小设置为20,但我的结果数组中仍然有49个对象(这些是查询中的所有对象)

        NSPredicate *predicate = [NSPredicate predicateWithFormat:@"company.id = %@", company.id];
        NSFetchRequest *req = [CategoryEntity requestAllSortedBy:@"id" ascending:YES withPredicate:predicate];
        [req setFetchBatchSize:20];
        NSArray *results = [CategoryEntity executeFetchRequest:req];

那么setFetchBatchSize的含义是什么,因为它似乎没有限制请求?

1 个答案:

答案 0 :(得分:4)

要限制大小,请使用fetchLimit。

对于批量大小,对象出现故障。他们看起来像是在那里,但那些只是存根。当你访问它们 - 在幕后 - 然后填充值。