Apple lanzó Swift 5.10, una actualización del lenguaje de programación de código abierto de la compañía que alcanza un hito importante: brindar seguridad contra carreras de datos a través del aislamiento total de datos en el modelo de concurrencia. La mejora prepara el camino para el lanzamiento previsto de Swift 6.
Binarios para Swift 5.10, introducido el 5 de marzose puede encontrar en swift.org para Windows, macOS y Linux.
Al explicar este hito, la ingeniera de Apple Swift, Holly Borla, dijo que una fuente cada vez más importante de comportamiento indefinido es el código concurrente que accede inadvertidamente a la memoria desde un subproceso al mismo tiempo que otro subproceso escribe en la misma memoria. Esta inseguridad se denomina carrera de datos, lo que hace que los programas concurrentes sean excepcionalmente difíciles de escribir, señaló Borla. Swift 5.10 finalmente logra el aislamiento completo de datos para la concurrencia después de años de desarrollo activo. El modelo de concurrencia fue introducido en Rápido 5.5 en septiembre de 2021.
Swift 5.10 impone un aislamiento total de los datos en el momento de la compilación cuando la opción de verificación de concurrencia completa está habilitada, dijo Borla. Esto prepara el escenario para Swift 6, que ofrecerá un modo de idioma Swift 6 opcional que impone el aislamiento total de datos de forma predeterminada. Mientras tanto, Swift 5.10 producirá advertencias de carrera de datos en algunas circunstancias en las que se podría demostrar que el código es seguro con un análisis adicional del compilador.
Un enfoque clave del desarrollo del lenguaje para Swift 6 es mejorar la usabilidad de la verificación estricta de concurrencia mitigando errores de concurrencia falsos positivos en patrones comunes que han demostrado ser seguros, dijo Borla. Concurrencia estructurada ha sido citado como un objetivo del lado del servidor para el lenguaje Swift.
Copyright © 2024 IDG Communications, Inc.