У меня есть несколько запросов:Как синхронизировать несколько Alamofire запросы
var data1: MyData?
var data2: MyData?
var data3: MyData?
func makeRequest(url: String, completion: (result: ResponseResult, data: MyData?) -> Void){
Alamofire.request(.GET, url).responseJSON { response in
switch response.result {
case .Success(let JSON):
completion(result: .Success, MyData(JSON))
case. Failure(let error):
completion(result: .Failure, nil)
}
}
}
makeRequest(url1){ result, data in
data1 = data
}
makeRequest(url2){ result, data in
data2 = data
}
makeRequest(url3){ result, data in
data3 = data
}
И после того, как было получено все данные я должен вызвать следующую функцию:
workWithData(data1, data2: data2, data3: data3)
Как сделать барьер для этого три запроса в эта ситуация?
после успешного вызова третьего запроса позвоните в вашу функцию. –
@AshishKakkad Запросы Alamofire являются асинхронными –
Вы используете реактивный какао или что-то подобное? Если это так, вы можете перевести вызов в сигнал, а затем вызывать его последовательно (или все, что хотите). – KlimczakM