Ios 如何知道上次异步服务器调用何时结束

Ios 如何知道上次异步服务器调用何时结束,ios,swift,Ios,Swift,我想知道在for循环中处理异步调用的最佳方法是什么,这样我们就知道最后一次调用是何时进行/结束的 这里的问题是for循环比服务器调用快,因此调用将排队,如何确保最后一次 是制造和结束的吗 以下面的伪示例为例: someData.forEach({(object) in self.myFunc(object) }) fileprivate func myFunc(object: object) { doesSomeServerAsyncCallWithObjectAndComp

我想知道在for循环中处理异步调用的最佳方法是什么,这样我们就知道最后一次调用是何时进行/结束的

这里的问题是for循环比服务器调用快,因此调用将排队,如何确保最后一次 是制造和结束的吗

以下面的伪示例为例:

someData.forEach({(object) in 
    self.myFunc(object)
})

fileprivate func myFunc(object: object) {
    doesSomeServerAsyncCallWithObjectAndCompletion(object) {(success, desiredData) in 
        // HOW TO KNOW HERE THAT THIS WAS THE LAST CALL REQUESTED??
    }
}
使用DispatchGroup

让dispatchGroup=dispatchGroup()
dispatchGroup.enter()
longRunningFunction{dispatchGroup.leave()}
dispatchGroup.enter()
longRunningFunctionTwo{dispatchGroup.leave()}
dispatchGroup.notify(队列:.main){
打印(“两个功能都完成使用DispatchGroup

让dispatchGroup=dispatchGroup()
dispatchGroup.enter()
longRunningFunction{dispatchGroup.leave()}
dispatchGroup.enter()
longRunningFunctionTwo{dispatchGroup.leave()}
dispatchGroup.notify(队列:.main){

打印(“两个功能都完成了,我将试用您的示例按预期工作。谢谢。我将试用您的示例按预期工作。谢谢。