setFetchBatchSize для NSFetchRequest на iPhone - PullRequest
1 голос
/ 09 марта 2011

Я не понимаю значения 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 Ответ

4 голосов
/ 09 марта 2011

Для ограничения размера используйте fetchLimit.

При размере пакета объекты повреждены. Они выглядят так, как будто они есть, но это всего лишь окурки. При доступе к ним - за кулисами - значения затем заполняются.

...