Core data NSFetchedResultsController通过MagicalRecord在后台
如何在后台线程中使用MR_fetchAllSortedBy方法 我试过:Core data NSFetchedResultsController通过MagicalRecord在后台,core-data,magicalrecord,Core Data,Magicalrecord,如何在后台线程中使用MR_fetchAllSortedBy方法 我试过: - (void)viewDidLoad { [super viewDidLoad]; [self loadFetchedResultsController]; } - (void)loadFetchedResultsController { dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0),^{
- (void)viewDidLoad
{
[super viewDidLoad];
[self loadFetchedResultsController];
}
- (void)loadFetchedResultsController
{
dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0),^{
_fetchedResultsController = [Podcast MR_fetchAllSortedBy:@"position"
ascending:YES
withPredicate:nil
groupBy:nil
delegate:self]
dispatch_async(dispatch_get_main_queue(),^{
if (![self.fetchedResultsController performFetch:&error])
{
[MagicalRecord handleErrors:error];
}
});
});
}
这些似乎已加载,但UITableView为空MR_fetch方法将在返回之前执行提取,因此在这种情况下,实际上要提取两次。您是在抓取过程中注意到性能问题,还是只是好奇?不管是哪种方式,我都会先选择一个批量大小,然后在查看后台抓取之前通过您的抓取请求发送它。在后台和主线程中工作的性能差异非常明显