Error «This application is modifying the autolayout engine from a background thread» — ¿cómo solucionarlo?
¡Hola a todos! Soy nuevo en Swift y desarrollo para macOS. Me encontré con un error extraño que no aparece siempre, sino solo cuando la aplicación realiza alguna operación larga. En la consola se muestra el mensaje:
```
This application is modifying the autolayout engine from a background thread after the engine was accessed from the main thread. This can lead to engine corruption and weird crashes.
```
Tengo un ejemplo simple: cargo datos de internet en un background thread, y después de completar quiero actualizar un `NSTextField` en la pantalla. Aquí está mi código:
```swift
import Cocoa
class ViewController: NSViewController {
@IBOutlet weak var statusLabel: NSTextField!
override func viewDidLoad() {
super.viewDidLoad()
// Emulamos una carga larga
DispatchQueue.global().async {
self.loadData()
}
}
func loadData() {
// Simulación de carga
Thread.sleep(forTimeInterval: 2.0)
let result = "Datos
No answers yet.
Inicia sesión para dejar una respuesta