Sobes.tech
Junior

Metoda data task se execută sincron sau asincron?

sobes.tech AI

Răspuns de la AI

Asincron.

// URLSessionDataTask se execută asincron.
// Returnează controlul imediat,
// iar rezultatul (date, răspuns, eroare) este transmis handler-ului de finalizare
// după ce cererea de rețea se finalizează într-un fir de fundal.
let task = URLSession.shared.dataTask(with: url) { data, response, error in
    // Acest bloc de cod se execută asincron
    // după primirea răspunsului de la server sau dacă apare o eroare.
    if let data = data {
        print("Date primite: \(data.count) bytes")
    } else if let error = error {
        print("Eroare: \(error.localizedDescription)")
    }
}

// Începem sarcina.
// Metoda resume() pur și simplu plasează sarcina în coadă.
task.resume()

// Codul după task.resume() se execută imediat,
// fără a aștepta finalizarea cererii de rețea.
print("Sarcină începută...")