我想知道这两者在性能上有什么不同。GCD vs自定义队列
dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_HIGH, 0), ^{
// perform complex operation
// dispatch back to main thread to update UI
});
dispatch_async(_myCustomConcurrentQueue, ^{
// perform complex operation
// dispatch back to main thread to update UI
});
我的假设是GCD跨操作系统和其他应用程序使用,并且需要执行非常快的后台任务,并完成快速。并且创建的自定义队列与GCD分开,他们可以运行不同的任务,并且一旦释放,它们将被添加回池中。所以我的假设是,我的customQueue比复杂操作的GCD表现更好。
你的想法是什么?哪个性能更好?他们是一样的吗?
不是一个完整的答案,因为我没有时间去挖掘文档参考,但是:这两个调用几乎肯定是等价的。队列的选择更多地是关于如何相对于同一队列(或其他全局并发队列)上的其他块调度块。很有可能,他们最终都会在同一个基础GCD线程上执行。 –
“自定义队列”是一个GCD队列。这是同一个系统 –