gpt4 book ai didi

iOS 检测 2 个 block 何时完全执行

转载 作者:行者123 更新时间:2023-11-29 12:04:57 25 4
gpt4 key购买 nike

我有 2 个 block 用于从服务器获取数据。当 2 个 block 开始执行时,我会显示一个加载对话框,然后在 2 个 block 完成时将其隐藏。

//  Show loading dialog
// Block 1
[[DataCenter shareInstance] getGenresListWithCallback:^(id result, id error) {

}];
// Block 2
[[DataCenter shareInstance] getJobsListWithUserType:user.type callback:^(id result, id error){

}];

如何检测 2 个 block 何时完全执行?

最佳答案

有多种方法可以做到这一点。这是一个:

创建一个atomic 整数属性taskCount。添加每个获取作业时,增加 taskCount。在每个完成 block 中,递减 self.taskCount。当它达到 0 时,您就完成了。请注意,您需要在开始时一次性提交所有作业,否则您可能会冒着在提交所有作业之前完成其中一部分作业的风险。

您还可以将所有作业提交到 GCD 调度队列,并使用调度组来检测它们何时全部完成,但这需要重构您的代码。

关于iOS 检测 2 个 block 何时完全执行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35422362/

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