Junior
Le méthode data task s'exécute-t-elle de manière synchrone ou asynchrone?
sobes.tech IA
Réponse de l'IA
De manière asynchrone.
// URLSessionDataTask s'exécute de manière asynchrone.
// Il retourne le contrôle immédiatement,
// et le résultat (données, réponse, erreur) est transmis au gestionnaire de fin
// après que la requête réseau est terminée dans un thread en arrière-plan.
let task = URLSession.shared.dataTask(with: url) { data, response, error in
// Ce bloc de code s'exécute de manière asynchrone
// après réception de la réponse du serveur ou en cas d'erreur.
if let data = data {
print("Données reçues : \(data.count) octets")
} else if let error = error {
print("Erreur : \(error.localizedDescription)")
}
}
// Démarrons la tâche.
// La méthode resume() met simplement la tâche en file d'attente.
task.resume()
// Le code après task.resume() s'exécute immédiatement,
// sans attendre la fin de la requête réseau.
print("Tâche démarrée...")