gpt4 book ai didi

ios - DISPATCH_QUEUE_CONCURRENT和全局并发调度队列之间有什么区别

转载 作者:行者123 更新时间:2023-12-01 17:38:46 27 4
gpt4 key购买 nike

我在Apple文档中阅读了here,该文档用于创建并发队列,DISPATCH_QUEUE_CONCURRENT和全局并发调度队列都可以使用,但是我不确定两者之间的区别是什么。

前任。

dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_BACKGROUND, 0), ^{ });


dispatch_queue_t queue = dispatch_queue_create("custom",DISPATCH_QUEUE_CONCURRENT);

dispatch_async(queue, ^{ });

我读了一些关于障碍的文章,但不确定如何将它们与这两者联系起来。有人可以解释这两种情况的用例吗?

最佳答案

共有四个全局并发队列,每个队列分别对应四个不同的优先级,这些优先级始终存在,并且在需要时始终存在。因此,您无需创建并发队列即可在后台执行某些块。 dispatch_get_global_queue()返回这四个队列之一。

您可以根据需要创建自己的队列,并在不再需要它们时将其删除。

您正在阅读的关于障碍的内容:每个人都使用全局队列。在每个人都使用的队列中使用屏障,这是非常不礼貌的。这就是为什么您不应该在全局队列中使用障碍,而只能在您自己创建的队列中使用障碍。

关于ios - DISPATCH_QUEUE_CONCURRENT和全局并发调度队列之间有什么区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30234847/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com