У меня есть функция для получения данных с помощью json, и я добавляю все данные в массив. Я пытаюсь создать семафор и дождаться отправки сигнала на семафор, чтобы продолжить, но он не работает (я не уверен, что я делаю это правильно или нет), затем я увидел вопрос в Stackoverflow, ответ был создан обработчик завершения как этоДождитесь окончания функции Swift
func application(application: UIApplication!, performFetchWithCompletionHandler completionHandler: ((UIBackgroundFetchResult) -> Void)!) {
getUrunGrup(completionHandler)
}
так я изменил мою функцию как то
func getUrunGrup(completionHandler: ((UIBackgroundFetchResult) -> Void)!){
Alamofire.request(.GET, "http://213.136.86.160:27701/Thunder/DataService/GetUrunGrup")
.responseJSON {(request, response, jsonObj, error) in
if let jsonresult:NSDictionary = jsonObj as? NSDictionary{
if let result: AnyObject = jsonresult["Result"] {
let elementCount = result.count
for (var i = 0; i<elementCount; ++i){
if let name: AnyObject = result[i]["Adi"]!{
if let kod:AnyObject = result[i]["Kod"]!{
urunUstGrup.append(["Adi": "\(name)", "Kod": "\(kod)"])
println("getUrunGrup \(i)")
}
}
}
}
}
}
completionHandler(UIBackgroundFetchResult.NewData)
println("Background Fetch Complete")
}
но не там нет ответа для того, как я должен вызвать эту функцию?
здесь является полный ответ: http: //stackoverflow.com/questions/24725059/wait-for-asynchronous-operation-to-complete-in-swift. кредитов: http: //stackoverflow.com/users/420303/daij-djan –
, но как я могу назвать свою функцию, я знаю этот ответ, никто не говорит, как вызвать вашу функцию в вашей программе. –
вызов getUrunGrup не поможет? –