Sobes.tech
Junior

Wordt de methode data task synchron of asynchroon uitgevoerd?

sobes.tech AI

Antwoord van AI

Asynchroon.

// URLSessionDataTask wordt asynchroon uitgevoerd.
// Het geeft onmiddellijk de controle terug,
// en het resultaat (gegevens, antwoord, fout) wordt doorgegeven aan de afrondingshandler
// nadat de netwerkverzoek in een achtergrondthread is voltooid.
let task = URLSession.shared.dataTask(with: url) { data, response, error in
    // Deze codeblok wordt asynchroon uitgevoerd
    // na ontvangst van het antwoord van de server of bij een fout.
    if let data = data {
        print("Ontvangen data: \(data.count) bytes")
    } else if let error = error {
        print("Fout: \(error.localizedDescription)")
    }
}

// Start de taak.
// De methode resume() plaatst de taak gewoon in de wachtrij.
task.resume()

// De code na task.resume() wordt onmiddellijk uitgevoerd,
// zonder te wachten op het voltooien van het netwerkverzoek.
print("Taak gestart...")