Cómo ejecutar código correctamente en un hilo de fondo en Swift (Grand Central Dispatch)
¡Hola a todos! Soy nuevo en el desarrollo de iOS con Swift y tengo un problema con la concurrencia. Tengo una aplicación que descarga imágenes de internet. Cuando llamo a la función de descarga en el hilo principal, la interfaz se congela durante unos segundos: el scroll de la tabla se ralentiza y las animaciones desaparecen. Entiendo que necesito mover las operaciones pesadas (solicitudes de red, procesamiento de datos) a un hilo de fondo, pero no sé cómo hacerlo correctamente.
Aquí hay un ejemplo de mi código:
```swift
func loadImage(from urlString: String) -> UIImage? {
guard let url = URL(string: urlString) else { return nil }
do {
let data = try Data(contentsOf: url)
return UIImage(data: data)
} catch {
print("Error loading image: \(error)")
return nil
}
}
// Uso en viewDidLoad
override func viewDidLoad() {
super.viewDidLoad()
let image = loadImage(from: "https://example.com/large-image.jpg")
imageView.image = image
}
```
He oído sobre Di
No answers yet.
Inicia sesión para dejar una respuesta