【发布时间】:2015-01-31 06:56:15
【问题描述】:
我已经在In Swift, how to stop all the process until datas retrieved from parse.com in UICOLLECTIONVIEW 上问过这个问题。在执行下一个函数之前,我无法从 parse.com 检索数据。我不知道如何访问异步线程。我已将主队列声明为“first_fun()”,因此应该首先运行。同样,它首先运行,但最后结束。在此之前,下一个函数 ("second_fun()") 被执行。如何排队这个功能块?如何先完成异步线程?请检查我的代码。
我的代码如下:
override func viewDidLoad() {
println("START")
let queue : dispatch_queue_t = dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0)
dispatch_async(queue, {
dispatch_async(dispatch_get_main_queue(), { () -> Void in
self.first_fun()
})
})
second_fun()
println("END")
}
//FIRST_FUN
func first_fun() {
println("FIRST CLASS TOP")
self.par_query.findObjectsInBackgroundWithBlock({(NSArray objects, NSError error) in
if (error != nil) {
NSLog("error " + error.localizedDescription)
}
else {
println("WELCOME to PARSE")
}//ELSE ENDING
})//PARSE ENDING
println("FIRST CLASS BOTTOM")
}
//SECOND_FUN
func second_fun() {
println("WELCOME to SECOND")
}
【问题讨论】:
标签: swift parse-platform grand-central-dispatch