Junior
O método data task é executado de forma síncrona ou assíncrona?
sobes.tech IA
Resposta da IA
De forma assíncrona.
// URLSessionDataTask é executado de forma assíncrona.
// Ele devolve o controlo imediatamente,
// e o resultado (dados, resposta, erro) é passado ao manipulador de conclusão
// após a requisição de rede terminar num thread de fundo.
let task = URLSession.shared.dataTask(with: url) { data, response, error in
// Este bloco de código é executado de forma assíncrona
// após receber a resposta do servidor ou ocorrer um erro.
if let data = data {
print("Dados recebidos: \(data.count) bytes")
} else if let error = error {
print("Erro: \(error.localizedDescription)")
}
}
// Iniciamos a tarefa.
// O método resume() simplesmente coloca a tarefa na fila.
task.resume()
// O código após task.resume() é executado imediatamente,
// sem esperar que a requisição de rede termine.
print("Tarefa iniciada...")