码迷,mamicode.com
首页 > 移动开发 > 详细

iOS线程依赖

时间:2017-08-17 20:06:36      阅读:271      评论:0      收藏:0      [点我收藏+]

标签:lock   enc   nal   dep   打印   queue   队列   实用   作用   

 依赖的作用: 在iOS开发中,我们经常会用到一个线程需要等待另一个结束才能进行的需求,这种需求其实有很实用的解决办法.下面我将列举一些目前用到的方法:

 

 

   //需求:: 用NSOpertion和NSOpertionQueue处理A,B,C,D,E三个线程,要求执行完A,B,D,E后才能执行C,怎么做?

    // 创建队列

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

    

    // 创建5个操作

    NSOperation *a = [NSBlockOperation blockOperationWithBlock:^{

        NSLog(@"operation---a");

    }];

    NSOperation *b = [NSBlockOperation blockOperationWithBlock:^{

        NSLog(@"operation---b");

    }];

    NSOperation *c = [NSBlockOperation blockOperationWithBlock:^{

        NSLog(@"**************c");

    }];

    NSOperation *d = [NSBlockOperation blockOperationWithBlock:^{

        NSLog(@"operation---d");

    }];

    NSOperation *e = [NSBlockOperation blockOperationWithBlock:^{

        NSLog(@"operation---e");

    }];

    

    // 添加依赖

    [c addDependency:a];

    [c addDependency:b];

    [c addDependency:d];

    [c addDependency:e];

    

    // 执行操作

    [queue addOperation:a];

    [queue addOperation:b];

    [queue addOperation:c];

    [queue addOperation:d];

    [queue addOperation:e];

 

 打印结果:

2017-08-17 18:38:02.040 依赖[11633:750843] operation---a

2017-08-17 18:38:02.040 依赖[11633:757610] operation---b

2017-08-17 18:38:02.040 依赖[11633:757611] operation---d

2017-08-17 18:38:02.040 依赖[11633:757612] operation---e

2017-08-17 18:38:02.042 依赖[11633:757610] **************c

 

iOS线程依赖

标签:lock   enc   nal   dep   打印   queue   队列   实用   作用   

原文地址:http://www.cnblogs.com/wangbinios/p/7383794.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!