Concurrency Programming Guide 4 Dispatch Queues
Dispatch Queues
type of Dispatch Queues
类型 | 描述 | 限制 |
---|---|---|
Serial | 也叫private dispatch queue,串行执行queue上的每一个task。 每一个task都在独立的线程里运行,由dispatch queue统一管理。经常用来控制对特定资源的访问(如临界资源)。 | 木有限制,你可以创建任意多个的serial dispatch queue,他们之间是并行的。 |
Concurrent | 也叫global diapatch queue,并行执行queue里面的每一个task。每一个task都在独立的线程里运行,由dispatch queue统一管理。并行的数量是动态地,由system当前的资源状态决定。 | concurrent dispatch queue有四个,由系统提供,根据优先级别区分为default、low、high、background。 |
Main dispatch queue | 这个diapatch queue在main thread里串行执行task。所以这个queue是关联main thread的run loop的,用来执行dispatch source相关的任务。因为该queue在main thread执行task,所以常用作各任务的同步点 | 全局唯一的特殊serial dispatch queue |