NSBlockOperation - 执行串行任务

来源:互联网 发布:淘宝店橱柜只有15个 编辑:程序博客网 时间:2024/06/01 09:28

NSBlockOperation - 执行串行任务

方法一 采用 maxConcurrentOperationCount

 NSOperationQueue *queue = [[NSOperationQueue alloc]init];queue.maxConcurrentOperationCount = 1;NSBlockOperation *operation1 = [NSBlockOperation blockOperationWithBlock:^{        NSLog(@"--------登录----");}];NSBlockOperation *operation2 = [NSBlockOperation blockOperationWithBlock:^{       NSLog(@"---------获取基本信息----");}];NSBlockOperation *operation3 = [NSBlockOperation blockOperationWithBlock:^{       NSLog(@"---------获取当前班级信息----");}];[queue addOperations:@[operation1,operation2,operation3] waitUntilFinished:YES];

方法二 采用 addDependency

 NSOperationQueue *queue = [[NSOperationQueue alloc]init]; NSBlockOperation *operation1 = [NSBlockOperation blockOperationWithBlock:^{        NSLog(@"--------登录----");}];NSBlockOperation *operation2 = [NSBlockOperation blockOperationWithBlock:^{       NSLog(@"---------获取基本信息----");}];NSBlockOperation *operation3 = [NSBlockOperation blockOperationWithBlock:^{       NSLog(@"---------获取当前班级信息----");}];[operation2 addDependency:operation1];[operation3 addDependency:operation2];[queue addOperations:@[operation1,operation2,operation3] waitUntilFinished:YES];
0 0
原创粉丝点击