I need the performAsyncRequests-methods (for each i) to finish before the next (i + 1) is being executed. I'm trying this:
let group = DispatchGroup()
let queue = OperationQueue()
queue.maxConcurrentOperationCount = 1
for i in 0..<results.count {
group.enter()
print("\(i)-async started")
queue.addOperation {
print("Operation \(i) added")
self.performAsyncRequests(completion: { (result) in
print("Request \(i) completed")
group.leave()
})
}
}
group.notify(queue: .main) {
print("All requests completed")
self.reloadTableView()
}
But this executes several requests concurrently. Appreciate if someone could point me in the right direction.