Я уже спросил об этом на In Swift, how to stop all the process until datas retrieved from parse.com in UICOLLECTIONVIEW. Я не мог получить данные с parse.com перед тем, как выполнить следующую функцию. Я не знаю, как получить доступ к асинхронному потоку. Я объявил, что главная очередь будет «first_fun()», поэтому это должно быть запущено в первую очередь. Аналогично, он работает первым, но заканчивается наконец. Перед этим выполняется следующая функция («second_fun()»). Как выполнить QUEUE этот функциональный блок? Как сначала завершить асинхронный поток? Пожалуйста, проверьте мой код.В Swift, почему GCD не работает с синтаксическим разбором?
МОЙ КОД НИЖЕ:
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")
}
Hi .. !! Я использовал свой путь. Затем я сомневаюсь в UICollectionView, http://stackoverflow.com/questions/28299481/getting-fatal-error-while-creating-an-instance-for-colectionviewcell. Пожалуйста, направляйте меня. –