NSBlockOperation - 执行串行任务

原创 2016年05月31日 17:08:41

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];

多线程下NSOperation、NSBlockOperation、NSInvocationOperation、NSOperationQueue的使用

本篇文章主要介绍下多线程下NSOperation、NSBlockOperation、NSInvocationOperation、NSOperationQueue的使用,列举几个简单的例子。 默认情...
  • crycheng
  • crycheng
  • 2014年03月22日 17:23
  • 14921

node.js实战学习笔记04--异步任务的串行化执行

启动脚本app.js如下: #!/usr/bin/env node setTimeout(function(){     console.log('I execute first.');     se...
  • yinfeifeiyin
  • yinfeifeiyin
  • 2017年02月04日 17:39
  • 66

iOS NSOperation之详解1(NSInvocationOperation,NSBlockOperation,设置依赖)

1.NSOperation本身是抽象基类,因此必须使用它的子类。 2.Foundation框架提供了两个具体子类供我们使用:NSInvocationOperation和NSBlockOperatio...
  • qq_27325349
  • qq_27325349
  • 2016年03月11日 09:37
  • 626

监听NSBlockOPeration执行完毕

  • baohanqing
  • baohanqing
  • 2016年04月15日 09:41
  • 140

ios-day19-03(NSOperation介绍、主队列、自定义队列、NSBlockOperation、NSInvocationOperation)

NSOperationQueue(操作队列)是由GCD提供的队列模型的Cocoa抽象,是一套Object-C的API GCD提供了更加底层的控制,而操作队列则在GCD之上实现了一些方便的功能,这些功...
  • liu537192
  • liu537192
  • 2015年04月04日 00:37
  • 835

设置NSBlockOperation依赖

  • baohanqing
  • baohanqing
  • 2016年04月15日 09:42
  • 410

java基础——关于异步任务串行执行的思考与实现

转自http://www.cnblogs.com/kross/p/5698539.html
  • chuntiandejiaobu10
  • chuntiandejiaobu10
  • 2016年08月15日 15:41
  • 539

NSBlockOperation

NSBlockOperation是NSOperation的子类,以block的方式添加任务。
  • y550918116j
  • y550918116j
  • 2016年03月09日 17:03
  • 257

02.任务队列和中间人

上一篇介绍Celery是处理任务队列的分布式系统,那么什么是任务队列?任务队列任务队列是一种分配工作到线程或者计算机的一种机制。 任务队列的输入是叫任务的工作单元,worker进程会不断监视任务队列...
  • a540366413
  • a540366413
  • 2017年06月16日 13:04
  • 204

NSBlockOperation线程间通信

// 常规书写方式 - (void)OPDemo { // 1.创建队列 : 默认是并发的 NSOperationQueue *queue = [[NSOperationQueue a...
  • sinat_20559947
  • sinat_20559947
  • 2016年09月21日 16:35
  • 125
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:NSBlockOperation - 执行串行任务
举报原因:
原因补充:

(最多只允许输入30个字)