ios – 仅在异步函数完成执行后运行代码

ios – 仅在异步函数完成执行后运行代码,第1张

概述我对 Swift和Xcode一般都比较新,我发现很难解决这个问题. 我正在开发一个利用Parse.com后端服务器的应用程序.为了不阻塞主线程,每当应用程序从服务器下载任何内容时,都会异步地在不同的线程上完成.然而,其余代码继续在主线程上执行,并且当它应该从服务器获得的数据尚未下载时崩溃.我想知道如何在异步函数完成后调用函数来运行,并且必须对单独文件中的函数执行此 *** 作. 我读到闭包可能对此有所帮助 我对 Swift和Xcode一般都比较新,我发现很难解决这个问题.

我正在开发一个利用Parse.com后端服务器的应用程序.为了不阻塞主线程,每当应用程序从服务器下载任何内容时,都会异步地在不同的线程上完成.然而,其余代码继续在主线程上执行,并且当它应该从服务器获得的数据尚未下载时崩溃.我想知道如何在异步函数完成后调用函数来运行,并且必须对单独文件中的函数执行此 *** 作.

我读到闭包可能对此有所帮助,但我发现语法非常困难,并且将非常感谢解释.但任何方式都会非常有帮助.

谢谢

解决方法 好吧,你只需在异步回调结束时调用该函数.那是异步回调结束的时候 – 异步回调中的其他所有内容都已完成!所以,例如:
func myMethod() {    // ... code ...    somebody.doSomethingWith(someObject,asynchronousCallback: {        (thing,otherThing) in        // ... do whatever        // --> CALL THE FUNCTION!    })    // ... code ...}

如果问题是你不知道要调用什么函数,你可以配置你周围的函数/对象,这样有人可以给你一个函数,然后你在我上面说“调用函数”的地方调用你的函数.

例如:

func myMethod(f:() -> ()) { // we receive the function as parameter    // ... code ...    somebody.doSomethingWith(someObject,otherThing) in        // ... do whatever        // --> CALL THE FUNCTION,by saying:        f()    })    // ... code ...}
总结

以上是内存溢出为你收集整理的ios – 仅在异步函数完成执行后运行代码全部内容,希望文章能够帮你解决ios – 仅在异步函数完成执行后运行代码所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1101328.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-28
下一篇 2022-05-28

发表评论

登录后才能评论

评论列表(0条)

保存