Was ist die beste Vorgehensweise für Swift, um die Warteschlange einer API-Anfrage zu erstellen? Ich meine, während mehr als 1 API für eine Funktion aufgerufen wird, wie kann man sicherstellen, dass die erste API zuerst eine Antwort bekommt, dann wird die zweite API ausgeführt?Best Practice für die Warteschlange der API-Anfrage
func test() {
getAPI1()
getAPI2()
}
func getAPI1() {
Connector.sharedInstance().getAPI1({ (
data: NSData?, response: NSURLResponse?, error: NSError?) -> Void in
})
}
...
Ich denke eine Fahne geben, um anzuzeigen, dass es eine andere API ist immer noch auf Antwort wartet, so dass die zweite API, die ausgeführt werden, warten wird, bis das Flag durch das zuvor genannte API geändert wird. Aber, gibt es noch andere bessere Möglichkeiten? Vielen Dank.
Vielleicht ist Ihre Funktion Dispatch müssen eine Schlange? Weitere Informationen finden Sie im [Concurrency Programming Guide] (https://developer.apple.com/library/ios/documentation/General/Conceptual/ConcurrencyProgrammingGuide/OperationQueues/OperationQueues.html#//apple_ref/doc/uid/TP40008091-CH102-SW1). Beachten Sie in jedem Fall, dass Dispatch-Warteschlangen First-In und First-Out sind, während Operationswarteschlangen dies nicht tun. –
Sie können auch Versandgruppen verwenden. Sie funktionieren oft besser, wenn Sie asynchrone Funktionen versenden müssen – Paulw11