iOS 任务的依赖操作

-(void)dependency{

    /**

     假设有A、B~C三个操作,要求:

     1. 3个操作都异步执行

     2. 操作C依赖于操作B

     3. 操作B依赖于操作A

     */

    //创建一个队列

    NSOperationQueue *queue = [[NSOperationQueue alloc] init];

    //可开辟线程的最大数量

    queue.maxConcurrentOperationCount = 3;

    

    //创建三个任务

    NSBlockOperation *operationA = [NSBlockOperation blockOperationWithBlock:^{

        //  A 任务

    }];

    

    NSBlockOperation *operationB = [NSBlockOperation blockOperationWithBlock:^{

        // B 任务

    }];

 NSBlockOperation *operationC = [NSBlockOperation blockOperationWithBlock:^{

        // C 任务

    }];

    //设置三个任务相互依赖

    // operationB 任务依赖于 operationA

    [operationB addDependency:operationA];

   //operationC 任务依赖于 operationB

   [operationC addDependency:operationB];

     //添加操作到队列中(自动异步执行任务,并发)

    [queue addOperation:operationA];

    [queue addOperation:operationB];

     [queue addOperation:operationC];

}

//A,B,C 三个任务 依次执行 程序中的操作,事件之间的相互依赖关系 按顺序执行 

转载于:https://www.cnblogs.com/tryFighting/p/6410816.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值