Junior
Il metodo data task viene eseguito in modo sincrono o asincrono?
sobes.tech AI
Risposta dell'AI
In modo asincrono.
// URLSessionDataTask viene eseguito in modo asincrono.
// Restituisce il controllo immediatamente,
// e il risultato (dati, risposta, errore) viene passato al gestore di completamento
// dopo che la richiesta di rete termina in un thread di background.
let task = URLSession.shared.dataTask(with: url) { data, response, error in
// Questo blocco di codice viene eseguito in modo asincrono
// dopo aver ricevuto la risposta dal server o in caso di errore.
if let data = data {
print("Dati ricevuti: \(data.count) byte")
} else if let error = error {
print("Errore: \(error.localizedDescription)")
}
}
// Avviamo il task.
// Il metodo resume() mette semplicemente il task in coda.
task.resume()
// Il codice dopo task.resume() viene eseguito immediatamente,
// senza attendere il completamento della richiesta di rete.
print("Task avviato...")