首页 > 其他 > 详细

NSOperation

时间:2016-03-14 13:37:34      阅读:105      评论:0      收藏:0      [点我收藏+]

创建队列

  主队列 

let queue = NSOperationQueue.mainQueue()

  其他队列

let queue = NSOperationQueue()

//2.创建NSBlockOperation对象
let operation = NSBlockOperation { () -> Void in
    NSLog("%@", NSThread.currentThread())
}

//3.添加多个Block
for i in 0..<5 {
    operation.addExecutionBlock { () -> Void in
        NSLog("第%ld次 - %@", i, NSThread.currentThread())
    }
}

//4.队列添加任务
queue.addOperation(operation)

  NSOperationQueue 有一个参数 maxConcurrentOperationCount 最大并发数,用来设置最多可以让多少个任务同时执行。当你把它设置为 1 的时候,就是串行了。

  NSOperationQueue 还有一个添加任务的方法,- (void)addOperationWithBlock:(void (^)(void))block; ,这是不是和 GCD 差不多?这样就可以添加一个任务到队列中了,十分方便。

  NSOperation 有一个非常实用的功能,那就是添加依赖。依赖之后就是在之前的任务做完再继续,但它们可能会在不同的线程(?)

  

NSOperation

原文:http://www.cnblogs.com/baaingSheep/p/5275245.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!