Sobes.tech
Junior — Middle

Cum trimiți zece cereri de rețea simultan folosind GCD?

sobes.tech AI

Răspuns de la AI

Pentru a trimite zece solicitări de rețea simultan folosind GCD (Grand Central Dispatch) pe iOS, poți crea un grup de sarcini DispatchGroup și adăuga solicitări asincrone în acesta. Acest lucru va permite lansarea tuturor solicitărilor în paralel și urmărirea finalizării lor.

Exemplu în 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
        // Procesarea răspunsului
        print("Solicitarea \(i) finalizată")
        dispatchGroup.leave()
    }
    task.resume()
}

dispatchGroup.notify(queue: .main) {
    print("Toate solicitările au fost finalizate")
}

Această abordare permite gestionarea eficientă a sarcinilor paralele și executarea de cod după finalizarea tuturor solicitărilor.