CoreData基本使用

CoreData基础使用

1. 建立1对多, 或 多对多 关系

示意图

2. CoreData 多线程

NSPrivateQueueConcurrencyType: CoreData 操作数据库时 是在子线程执行的

创建上下文对象,ConcurrencyType主要有NSPrivateQueueConcurrencyType和NSMainQueueConcurrencyType

NSPrivateQueueConcurrencyType表示私有并发队列的类型,操作也是在子线程中完成

NSMainQueueConcurrencyType表示主并发队列类型,在UI上的操作,使用这个参数初始化

[[NSManagedObjectContext alloc] initWithConcurrencyType:NSPrivateQueueConcurrencyType];

CoreData 多线程参考链接1

CoreData 多线程参考链接2

- (void)asynRequestion:(id)sender {

    dispatch_async(dispatch_get_main_queue(), ^{

        NSManagedObjectContext *context = [[NSManagedObjectContext alloc] initWithConcurrencyType:NSPrivateQueueConcurrencyType];

        context.persistentStoreCoordinator=self.context.persistentStoreCoordinator;

        NSFetchRequest *request = [NSFetchRequest fetchRequestWithEntityName:@"Person"];

        NSArray*arr = [contextexecuteFetchRequest:requesterror:nil];

        for(Person *pinarr) {

            NSLog(@"name=%@, age=%lld", p.name, p.age);

        }

    });

}

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容