码迷,mamicode.com
首页 > 编程语言 > 详细

NSOperation队列实实现多线程

时间:2016-07-14 14:56:31      阅读:148      评论:0      收藏:0      [点我收藏+]

标签:

  一:创建一个任务队列对象

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

    //设置最大并发任务数量

    [opretionQueue setMaxConcurrentOperationCount:5];

    二:三个实现方法

    方法一:直接创建任务

    //p1:任务函数的拥有者

    //p2:任务函数的执行体

    //p3:任意参数

    NSInvocationOperation *invocationO1 = [[NSInvocationOperation alloc] initWithTarget:self selector:@selector(opAction:) object:nil];

    [opretionQueue addOperation:invocationO1];//将任务添加到队列

    方法二:使用任务对象创建任务

    NSInvocation *invocation = [[NSInvocation alloc] init];

    invocation.target = self;

    invocation.selector = @selector(opAction:);

    NSInvocationOperation *invocationO2 = [[NSInvocationOperation alloc] initWithInvocation:invocation];

    [opretionQueue addOperation:invocationO2];

    

    方法三:使用Block来添加任务

    [opretionQueue addOperationWithBlock:^{

        //任务

    }];

 

NSOperation队列实实现多线程

标签:

原文地址:http://www.cnblogs.com/ai-nuonuo/p/5670405.html

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