NSOperationQueue与GCD分派队列

NSOperationQueue和GCD的相同点和不同点。

  • NSOperationQueue用GCD构建,是GCD高级抽象
  • GCD只支持FIFO,而加入NSOpertaionQueue队列的操作可以被重新排序
  • NSOperationQueue支持操作之间设置依赖关系,而GCD不支持。如果某个操作需要另一个操作生成的数据,可以让这个操作依赖另外的一个。
  • NSOperationQueue兼容KVO,这意味着你可以观察任务的状态。但NSOperationQueue的执行速度比GCD要慢。所以在任务间没有互相依赖,或者没有必要用KVO观察状态的情况,使用GCD。

猜你喜欢

转载自lizhuang.iteye.com/blog/1916932