当前位置 : 主页 > 手机开发 > 其它 >

swift – 用于链接异步操作的GCD模式,同时管道结果

来源:互联网 收集:自由互联 发布时间:2021-06-11
来自 JavaScript世界使用async javascript promises,我相信在Swift中使用GCD异步队列也是如此. 你能否指出一个例子,在队列中指定2到3个异步函数,一个异步操作将结果输入第二个,第二个将结果输入
来自 JavaScript世界使用async javascript promises,我相信在Swift中使用GCD异步队列也是如此.

你能否指出一个例子,在队列中指定2到3个异步函数,一个异步操作将结果输入第二个,第二个将结果输入第三个(通常称为管道结果)然后最后一个结果和错误处理程序.

所有函数都按设计限制为单个参数.

如果在函数2期间出现任何错误,则跳过函数3并将错误直接传递给错误处理程序.

寻找本机解决方案而不是任何第三方Promise或Monad库.

欣赏swift 3.0代码.

编辑.从示例中还可以了解到,步骤更像是GCD中的手动线性路径,其中开发人员是下一个进给结果并且每次都检查错误,使用Function Compositions可以进行任何功能编程吗?

我想避免Pyramid of Doom并寻找linear async programming.

我已经通过支持请求与Apple联系,他们将我推荐给了WWDC15视频 Advance NSOperations.

我没有看到如何将结果从一个子操作传递到另一个子操作,现在基于此视频,如果有人可以编写一些全面的示例代码,其中一个例程执行后将结果传递给下一个,我接受答案.

网友评论