小编Gui*_*ick的帖子

完成块 ? 嵌入在同步工作流中的异步流程

长期潜伏者,第一次海报。我对Objective-C比较陌生,所以如果我问的东西相当简单,我很抱歉。我的 google & stack overflow-fu 让我失望了,所以我想有人可以帮忙。

我有一个同步进程连续执行三个函数 - 称之为 A -> B-> C ,其中任务 A 执行,然后是 B,然后是 C。

现在,B 涉及一个异步过程,带有一个用于完成的委托回调。但是 B 必须在 C 执行之前完成,所以我需要一些机制,以便在 B 完成之前不会触发 C。我想这个问题一定有一个通用的设计模式吗?

最初天真的解决方案是 -

执行 A
执行 B
while (!B 完成) {}
执行 C

……但这似乎真的很蹩脚。

我怀疑我可以用某种块来做到这一点,但对于我的生活,我就是想不通。有人可以帮忙吗?

感谢任何帮助!

纪尧姆

xcode block objective-c

5
推荐指数
2
解决办法
2996
查看次数

标签 统计

block ×1

objective-c ×1

xcode ×1