Junior — Middle
¿Tiene experiencia práctica en el uso de Swift Concurrency en proyectos?
sobes.tech AI
Respuesta de la IA
Sí, Swift Concurrency permite escribir código asíncrono de manera más legible y segura, utilizando async/await, tareas (Task) y actores (Actors) para gestionar el estado y el acceso concurrente.
Ejemplo de uso de async/await para cargar datos:
func fetchUserData() async throws -> User {
let url = URL(string: "https://api.example.com/user")!
let (data, _) = try await URLSession.shared.data(from: url)
let user = try JSONDecoder().decode(User.self, from: data)
return user
}
Task {
do {
let user = try await fetchUserData()
print("Nombre del usuario: \(user.name)")
} catch {
print("Error al cargar el usuario: \(error)")
}
}
También se utilizan actores para proteger los datos contra condiciones de carrera durante el acceso paralelo.