如何快速一一调用函数?

时间:2018-10-02 12:33:50

标签: swift

我有两个功能

按如下所示调用这两个函数

fun c(){

  a()

  b()
}

这里面临的问题是在获得 a 方法 b 的响应并同时执行

但是我要一个接一个地执行

请建议

3 个答案:

答案 0 :(得分:0)

选项1 :从bbb的完成内部调用aaa

func aaa() {
   Api.taskl {
       bbb()
   }
}

选项2 :在这样的自定义串行队列中同时进行同步

let serialQueue = DispatchQueue(label: "queuename")
serialQueue.sync { 
 aaa()
}
serialQueue.sync { 
 bbb()
}

答案 1 :(得分:0)

您可以在另一个的完成块中调用另一个方法。

答案 2 :(得分:0)

您可以使用闭包:

方法a()为:

func a(_ completion: (() -> ())?){

//Do all of your staff, at the end call this:
 completion()
}

您可以通过两种方式调用方法:

a() //this will not execute the callback

//this is a callback where you call the other function
a(){ 
   b()
}