Noticias Programación

Ir 1.19 Revisar el modelo de memoria

Go 1.19 se lanzó con un modelo de memoria revisado y cambios de implementación en la cadena de herramientas, el tiempo de ejecución y las bibliotecas.


Go es un proyecto de código abierto desarrollado por un equipo de Google y muchos colaboradores de la comunidad de código abierto durante 8 años. Su uso principal es como lenguaje de programación de sistemas y se ha utilizado en éxitos comerciales de alto perfil como Docker.

El modelo de memoria Go se revisó para alinearse con el modelo de memoria utilizado por C, C ++, Java, JavaScript, Rust y Swift. Go proporciona solo átomos secuenciales coherentes, no ninguna de las formas más relajadas que se encuentran en otros idiomas. Junto con la actualización del modelo de memoria, Go 1.19 introduce nuevos tipos en el paquete sync/atomic que facilitan el uso de valores atómicos.

ardilla de tierra

El tiempo de ejecución ahora incluye soporte para un límite de memoria de software. Este límite de memoria incluye el montón de Go y el resto de la memoria administrada por el tiempo de ejecución y excluye las fuentes de memoria externa, como las asignaciones del propio binario, la memoria administrada en otros idiomas y la memoria retenida por el sistema operativo en nombre del programa Go. .

Go 1.19 agrega soporte para enlaces, listas y encabezados más claros en los comentarios del documento, y la verificación de errores se ha mejorado con la verificación veterinaria «errorsas» que ahora informa correctamente los errores. Como se llama con un segundo argumento de tipo * error «. Los desarrolladores dicen que esto es un error común.

La biblioteca central también se ha mejorado con soporte para nuevos tipos atómicos, más notablemente Bool, Int32, Int64, Uint32, Uint64, Uintptr y Pointer. Las búsquedas de ruta también se han cambiado para que Command y LookPath ya no le permitan encontrar los resultados de una búsqueda de ruta en relación con el directorio actual; es cuestionable si esto es una mejora o no, pero el equipo dice que el cambio elimina una fuente común de problemas de seguridad en forma de problemas relacionados con búsquedas de ruta en directorios que no son de confianza que pueden conducir a la ejecución remota durante el comando go get.

Go 1.19 ya está disponible para descargar.

goicon2

También puede gustarte...