Junior — Middle
¿Puedes explicar qué es la programación asíncrona en el contexto de la construcción Async/Await?
sobes.tech AI
Respuesta de la IA
La programación asíncrona usando Async/Await permite escribir código que realiza operaciones prolongadas (por ejemplo, solicitudes de red o lectura de archivos) sin bloquear el hilo principal de ejecución. La idea clave es que una función marcada como async puede suspender su ejecución en la instrucción await, esperando la finalización de una operación asíncrona, sin bloquear el hilo.
Esto simplifica el trabajo con la asincronía, haciendo que el código sea más legible y parecido a una secuencia, a diferencia de los callbacks anidados o las cadenas de promesas.
Ejemplo en Swift:
func fetchData() async throws -> Data {
let url = URL(string: "https://example.com/data.json")!
let (data, _) = try await URLSession.shared.data(from: url)
return data
}
Task {
do {
let data = try await fetchData()
print("Datos recibidos: \(data)")
} catch {
print("Error: \(error)")
}
}