Actors en Swift: aislamiento de datos entre tareas concurrentes

Las propiedades o métodos marcados como nonisolated no acceden al estado mutable del actor y pueden llamarse sin await:

actor Servidor {
    let host: String  // constante: segura sin aislamiento
    var conexiones = 0

    nonisolated var descripcion: String {
        "Servidor en (host)"  // solo usa la constante
    }

    init(host: String) { self.host = host }
}

let s = Servidor(host: "localhost")
print(s.descripcion)  // sin await

Actor vs Mutex

Los actors son la solución preferida en Swift para proteger estado compartido en código async. Para código síncrono de bajo nivel (interrupciones, callbacks de C), Mutex de swift-synchronization o OSAllocatedUnfairLock pueden ser más adecuados por su menor overhead.

COMPARTE ESTE ARTÍCULO

COMPARTIR EN FACEBOOK
COMPARTIR EN TWITTER
COMPARTIR EN LINKEDIN
COMPARTIR EN WHATSAPP