ios – 一个接一个地运行一个函数完成

我试图在pullData()完成后运行loadViews(),我想知道这样做的最佳方法是什么?我想在它上面设置10秒超时,如果可能的话我可以显示网络错误.从我所看到的,GCD看起来是实现这一目标的方式,但我对它的实现感到困惑.谢谢你提供的所有帮助!
//1
pullData()
//2
loadViews()

解决方法

你需要的是一个带有完成块的完成处理程序.

创建一个非常简单:

func firstTask(completion: (success: Bool) -> Void) {
    // Do something

    // Call completion,when finished,success or faliure
    completion(success: true)
}

并像这样使用你的完成块:

firstTask { (success) -> Void in
    if success {
       // do second task if success
       secondTask()
    }
}

相关文章

UITabBarController 是 iOS 中用于管理和显示选项卡界面的一...
UITableView的重用机制避免了频繁创建和销毁单元格的开销,使...
Objective-C中,类的实例变量(instance variables)和属性(...
从内存管理的角度来看,block可以作为方法的传入参数是因为b...
WKWebView 是 iOS 开发中用于显示网页内容的组件,它是在 iO...
OC中常用的多线程编程技术: 1. NSThread NSThread是Objecti...