Junior — Middle
Hoe verzend je tien netwerkverzoeken tegelijk met GCD?
sobes.tech AI
Antwoord van AI
Om tien netwerkverzoeken gelijktijdig te verzenden met GCD (Grand Central Dispatch) op iOS, kun je een DispatchGroup maken en asynchrone verzoeken eraan toevoegen. Dit stelt je in staat om alle verzoeken parallel te starten en hun voltooiing te volgen.
Voorbeeld in Swift:
let dispatchGroup = DispatchGroup()
for i in 1...10 {
dispatchGroup.enter()
let url = URL(string: "https://example.com/request\(i)")!
let task = URLSession.shared.dataTask(with: url) { data, response, error in
// Verwerking van het antwoord
print("Verzoek \(i) voltooid")
dispatchGroup.leave()
}
task.resume()
}
dispatchGroup.notify(queue: .main) {
print("Alle verzoeken zijn voltooid")
}
Deze aanpak maakt het mogelijk om efficiënt parallelle taken te beheren en code uit te voeren nadat alle verzoeken zijn voltooid.