Как синхронно запустить две функции с асинхронными операциями на iOS с помощью Swift

давайте предложим этот сценарий

метод с асинхронными сетевыми операциями

func asyncMethodA() -> String?
{
   result : String?
   Alamofire.manager.request(.POST, "https://www.apiweb.com/apimethod", parameters: parameters, encoding:.JSON)
            .response { (request, response, rawdata, error) in
                if (response?.statusCode == 200)
                {
                    //DO SOME HEAVY LIFTING
                }
        }
        return result //string

}

другой метод с асинхронными сетевыми операциями

func asyncMethodB() -> String?
{
   result : String?
   Alamofire.manager.request(.POST, "https://www.yetanotherapiweb.com/apimethod", parameters: parameters, encoding:.JSON)
            .response { (request, response, rawdata, error) in
                if (response?.statusCode == 200)
                {
                    //DO SOME HEAVY LIFTING

                }
        }
        return result //string
}

метод, в котором я буду вызывать эти методы A и B, чтобы сделать некоторые операции

func displayResult
{
   1)  let a = asyncMethodA()
   2)  let b = asyncMethodB()
   3)  println(a + b) //some chaotic stuff might happen :(
}

Итак, вопрос в том, как я могу сделать так, чтобы (2) ожидал выполнения (1) и (3) ожидал (2) и т. д. (чтобы 1,2 и 3 выполнялись синхронно)?

(я знаю, что один из ответов - объединить asyncMethodA и displayResult в asyncMethodB, но я хочу знать, есть ли другой метод)

благодарю вас!.

Ответы на вопрос(3)

Ваш ответ на вопрос