Sobes.tech
Junior — Middle

Come invii dieci richieste di rete contemporaneamente usando GCD?

sobes.tech AI

Risposta dell'AI

Per inviare dieci richieste di rete contemporaneamente utilizzando GCD (Grand Central Dispatch) su iOS, puoi creare un gruppo di task DispatchGroup e aggiungere richieste asincrone ad esso. Questo permetterà di avviare tutte le richieste in parallelo e di monitorarne il completamento.

Esempio 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
        // Elaborazione della risposta
        print("Richiesta \(i) completata")
        dispatchGroup.leave()
    }
    task.resume()
}

dispatchGroup.notify(queue: .main) {
    print("Tutte le richieste sono state completate")
}

Questo approccio permette di gestire efficacemente le attività in parallelo e di eseguire codice dopo che tutte le richieste sono state completate.