Sobes.tech
Junior

Vai data task metode darbo veic sinhroni vai asinhroni?

sobes.tech AI

Atbilde no AI

Asinhroni.

// URLSessionDataTask tiekas asinhroni.
// Tas nekavējoties atgriež kontroli,
// un rezultāts (dati, atbilde, kļūda) tiek nodots pabeigšanas apstrādātājam
// pēc tam, kad tīkla pieprasījums ir pabeigts fonā.
let task = URLSession.shared.dataTask(with: url) { data, response, error in
    // Šis koda bloks tiek izpildīts asinhroni
    // pēc servera atbildes saņemšanas vai kļūdas gadījumā.
    if let data = data {
        print("Saņemtie dati: \(data.count) baites")
    } else if let error = error {
        print("Kļūda: \(error.localizedDescription)")
    }
}

// Sākam uzdevumu.
// resume() metode vienkārši ievieto uzdevumu rindā.
task.resume()

// Kods pēc task.resume() tiek izpildīts nekavējoties,
// nesagaidot tīkla pieprasījuma pabeigšanu.
print("Uzdevums uzsākts...")