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...")