NSOperationQueue和GCD的区别,以及在什么场合下使用

来源:互联网 发布:美妆软件哪个好 编辑:程序博客网 时间:2024/05/01 08:08

1> GCD是纯C语言的API 。NSOperationQueue是基于GCD的OC的封装。

2> GCD只支持FIFO队列,NSOperationQueue可以方便设置执行顺序,设置最大的并发数量。

3> NSOperationQueue可是方便的设置operation之间的依赖关系,GCD则需要很多代码。

4> NSOperationQueue支持KVO,可以检测operation是否正在执行(isExecuted),是否结束(isFinished),是否取消(isCanceled)

5>GCD的执行速度比NSOperationQueue快。


使用场合:

任务之间不太相互依赖:GCD

任务之间有依赖或要监听任务的执行情况:NSOperationQueue

0 0
原创粉丝点击