标签:
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
有一个非常实用的功能,那就是添加依赖。依赖之后就是在之前的任务做完再继续,但它们可能会在不同的线程(?)
标签:
原文地址:http://www.cnblogs.com/baaingSheep/p/5275245.html