/* Page prose (es) */
"Overview" = "# Actores globales y Sendable\n\nDe vuelta en los capítulos clásicos aprendiste la regla de oro: **el trabajo de UI ocurre en el hilo principal.** La forma clásica de honrarla era envolver cada actualización de UI en `DispatchQueue.main.async { ... }` y *esperar* no olvidarlo nunca. Olvidarlo era un error silencioso: la app normalmente se veía bien, y luego fallaba bajo carga. El modelo moderno hace algo mejor: te deja *marcar* código como \"solo hilo principal\" y hace que el **compilador** compruebe cada llamada por ti. Ese marcador es `@MainActor`, y es un miembro de una idea más grande, los **actores globales**, que se empareja con un protocolo llamado **`Sendable`** para dejar que Swift demuestre que tu concurrencia es segura antes de siquiera ejecutarla. De esa demostración trata este capítulo.\n\n---\n\n## Qué aprenderás\n\n* Qué es `@MainActor`, y cómo reemplaza a \"saltar de vuelta a `DispatchQueue.main`.\"\n* Cómo definir tu propio **actor global** con `@globalActor`.\n* Qué significa **`Sendable`**, y por qué una clase mutable no es Sendable.\n* Qué restringen las clausuras `@Sendable`, y por qué `Task` las requiere.\n* Cómo Swift 6 convierte todo esto en comprobación de carreras de datos en **tiempo de compilación**.\n\nPasa la página y empezaremos con `@MainActor`, el marcador al que recurrirás constantemente.\n\npágina 1 de 11  |  [Siguiente: MainActor y el hilo principal](@next)";
