美文网首页
GCD和NSPoeration的区别

GCD和NSPoeration的区别

作者: 就算我心狂野 | 来源:发表于2016-04-28 21:34 被阅读67次

    • GCD
      • 任务(block)添加到队列(串行/并发/主队列),并且制定任务执行的函数(同步/异步)
      • GCD是底层的C语言构成的API
      • iOS4.0推出的,针对多核处理器的并发技术
      • 在对象中执行的是由block构成的任务,这是一个轻量级的数据结构
      • 要停止已经加入queueblock需要些赋值的代码
      • 需要通过Barrier或者同步任务这是任务之间的依赖关系
      • 只能设置队列的优先级
      • 高级功能:
        • 一次性once
        • 延迟操作 after
        • 调度组

    • NSOperation
      • 核心概念:把异步操作添加到全局的并发队列
      • OC框架,更加面向对象,是对GCD的封装
      • iOS2.0推出的,苹果推出GCD之后,对NSOperation的底层全部重写
      • Operation作为一个对象,为我们提供了更多的选择
      • 可以随时取消已经设定要这边执行的任务,已经执行的除外
      • 可以跨队列设置操作的依赖关系
      • 可以设置队列中每一个操作的优先级
      • 高级功能:
        • 最大并发数
        • 继续/暂停/全部取消
        • 跨队列设置操作的依赖关系

    相关文章

      网友评论

          本文标题:GCD和NSPoeration的区别

          本文链接:https://www.haomeiwen.com/subject/hmuhrttx.html