gpt4 book ai didi

ios - Grand Central Dispatch 和并发任务

转载 作者:可可西里 更新时间:2023-11-01 06:19:16 24 4
gpt4 key购买 nike

我需要执行三个彼此独立的任务,因此我想同时执行它们。但我需要他们都完成通知另一个对象。 AFAIK,*dispatch_apply* 创建并发线程,但它迭代一个集合或一个对象数组并执行相同的任务多次循环,我想为每个线程执行不同的任务。是否可以使用 GCD 做我想做的事?如果不是,最好的方法是什么?

谢谢!

最佳答案

使用 dispatch_groupConcurrency Programming Guide举个例子,有more API这也可能对您有所帮助。

  • 使用 dispatch_group_create 创建调度组。

  • 使用 dispatch_group_async 将每个“任务”放入队列中。

    (或者,使用 dispatch_group_enterdispatch_group_leave 手动告诉 GCD 每个任务何时开始和停止。)

  • 要在组中的所有任务都完成后运行一个 block ,请使用 dispatch_group_notify 将其入队。

    (或者,在极少数情况下,您的应用设计允许您同步等待,请改用 dispatch_group_wait。)

  • 当您处理完组后,dispatch_release 它。

关于ios - Grand Central Dispatch 和并发任务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13790701/

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