Junior — Middle
¿Cómo se puede garantizar la ejecución de un bloque de código específico después de recibir respuestas de varias solicitudes HTTP?
sobes.tech AI
Respuesta de la IA
En iOS, para ejecutar un bloque de código después de completar varias solicitudes HTTP, es conveniente usar DispatchGroup. Permite rastrear un grupo de tareas asíncronas y ejecutar código cuando todas ellas finalizan.
Ejemplo en Swift:
let dispatchGroup = DispatchGroup()
var results: [Data] = []
for url in urls {
dispatchGroup.enter()
URLSession.shared.dataTask(with: url) { data, response, error in
if let data = data {
results.append(data)
}
dispatchGroup.leave()
}.resume()
}
dispatchGroup.notify(queue: .main) {
// Este bloque se ejecutará después de que todas las solicitudes hayan finalizado
print("Todas las solicitudes han finalizado, procesamiento de resultados")
}
De esta manera, DispatchGroup ayuda a sincronizar varias operaciones asíncronas y ejecutar código después de su finalización.