码迷,mamicode.com
首页 > 其他好文 > 详细

NSOperation创建队列

时间:2016-05-17 19:13:00      阅读:110      评论:0      收藏:0      [点我收藏+]

标签:

 1 #pragma mark - NSOperation
 2     
 3     //NSOperation不能直接进行多线程的创建,需要帮助:NSOperationQueue
 4     // 使用NSOperation的第一个子类去创建线程:NSInvocationOperation
 5     NSInvocationOperation *operation = [[NSInvocationOperation alloc] initWithTarget:self selector:@selector(test) object:nil];
 6     
 7     // 在单独使用NSOperation的子类去创建线程的时候,需要启动才行
 8 //    [operation start];
 9     // 在使用NSOperation的子类去创建线程的时候,实际上线程没有真正意义上的创建
10     
11     
12     // 使用NSOperation的第二个子类创建子线程:NSBlockOperation
13     NSBlockOperation *operation1 = [NSBlockOperation blockOperationWithBlock:^{
14         
15         NSLog(@"我是block");
16         NSLog(@"??%@", [NSThread currentThread]);
17         NSLog(@"??%@", [NSThread mainThread]);
18     }];
19     
20 //    [operation1 start];
21     
22     
23     // 需要把上面的两个线程,放到操作队列里面
24     // addOperation一旦将创建的对象加入到操作队列中,就不能调用start方法
25     NSOperationQueue *queue = [[NSOperationQueue alloc] init];
26     
27     [queue addOperation:operation];
28     [queue addOperation:operation1];
29 }

// 最大的并发数量

    // 当值设置为1的时候,可以叫做串行:即顺序执行

    // 当值设置大于1的时候,叫做并行:多条通道同时进行各自的任务

    queue.maxConcurrentOperationCount = 3;

NSOperation创建队列

标签:

原文地址:http://www.cnblogs.com/zhizunbao/p/5502630.html

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