Ios CompletionHandler调用序列
我在我的应用程序中使用了completionHandler,如下所示Ios CompletionHandler调用序列,ios,swift,completionhandler,Ios,Swift,Completionhandler,我在我的应用程序中使用了completionHandler,如下所示 fun getDetails(completionHandler: (variable: AnyObject) -() ) { // Some work completionHandler(variable) } getDetails { variable in print(variable) } 我的问题是这个执行的函数调用顺序是什么?所以答案是当一个函数(比如a)被调用时,这个函数(比如B)作为一个参
fun getDetails(completionHandler: (variable: AnyObject) -() )
{
// Some work
completionHandler(variable)
}
getDetails
{
variable in
print(variable)
}
我的问题是这个执行的函数调用顺序是什么?所以答案是当一个函数(比如a)被调用时,这个函数(比如B)作为一个参数,被调用的函数(a)开始执行。一旦调用了参数(函数B)中的函数,流就会转到调用函数(A)的点。该代码开始执行,执行后,执行函数(A)的剩余部分
在上面的示例中,当调用getDetails时,该函数的执行开始,但当调用completionHandler时,流跳到{getDetails的部分,只有在完成之后,它才会返回并在completionHanldler()之后开始执行调用。我很难破译什么是真实代码,什么是伪代码,什么是拼写/语法错误。请给出一个更好的代码示例。尝试在操场上编译一些类似的示例代码,亲自查看执行情况。您也可以使用断点查看执行情况。这不是我自己想要解决的问题谢谢你的支持,谢谢