NSOperation 的优势和特点
2019-02-26 本文已影响0人
永远保持一颗进取心
1.添加任务依赖 2.任务执行状态的控制 3.控制最大并发量
一.添加任务依赖
可以通过 NSOperation
的 - (void)addDependency:(NSOperation *)op;
方法添加任务依赖。
要注意的是,如果 receiver 已经是执行状态,调用该方法没有任何效果;
二.任务执行状态的控制
有哪些状态?
- isReady 是否处于就绪状态
- isExecuting 是否处于执行状体
- isFinished 是否处于执行完成状态
- isCancelled 是否处于取消状态
怎么控制状态?
1.如果只是重写了 main
方法,状态由底层自动控制
2.如果重写了 start
方法,则需要自己控制执行状态。
系统怎么移除一个 isFinished=YES
的 NSOperation的?
通过KVO。
三.控制最大并发量
可以通过设置 NSOperationQueue
对象的 maxConcurrentOperationCount
属性控制最大并发量。