Sobes.tech
Junior

Běží metoda data task synchronně nebo asynchronně?

sobes.tech AI

Odpověď od AI

Asynchronně.

// URLSessionDataTask se provádí asynchronně.
// Vrací řízení okamžitě,
// a výsledek (data, odpověď, chyba) je předána obslužné rutině dokončení
// po dokončení síťového požadavku na pozadí.
let task = URLSession.shared.dataTask(with: url) { data, response, error in
    // Tento blok kódu se provádí asynchronně
    // po obdržení odpovědi od serveru nebo při chybě.
    if let data = data {
        print("Přijatá data: \(data.count) bajtů")
    } else if let error = error {
        print("Chyba: \(error.localizedDescription)")
    }
}

// Spouštíme úlohu.
// Metoda resume() jednoduše zařadí úlohu do fronty.
task.resume()

// Kód po task.resume() se provádí okamžitě,
// aniž by čekal na dokončení síťového požadavku.
print("Úloha začala...")