Lanzamiento de V8 v8.7
Cada seis semanas, creamos una nueva rama de V8 como parte de nuestro proceso de lanzamiento. Cada versión se deriva del maestro de Git de V8 inmediatamente antes de un hito de Chrome Beta. Hoy nos complace anunciar nuestra nueva rama, V8 versión 8.7, que está en fase beta hasta su lanzamiento en coordinación con Chrome 87 Stable en varias semanas. V8 v8.7 está lleno de todo tipo de novedades orientadas a los desarrolladores. Esta publicación ofrece un adelanto de algunos de los aspectos más destacados en anticipación al lanzamiento.
JavaScript
Llamadas rápidas inseguras de JS
V8 v8.7 viene con una API mejorada para realizar llamadas nativas desde JavaScript.
La función aún es experimental y se puede habilitar mediante la bandera --turbo-fast-api-calls
en V8 o la bandera correspondiente --enable-unsafe-fast-js-calls
en Chrome. Está diseñada para mejorar el rendimiento de algunas API gráficas nativas en Chrome, pero también puede ser utilizada por otros incrustadores. Proporciona nuevos medios para que los desarrolladores creen instancias de v8::FunctionTemplate
, como se documenta en este archivo de encabezado. Las funciones creadas usando la API original permanecerán sin cambios.
Para más información y una lista de las funciones disponibles, por favor consulta este explicador.
Atomics.waitAsync
Atomics.waitAsync
ahora está disponible en V8 v8.7.
Atomics.wait
y Atomics.notify
son primitivas de sincronización de bajo nivel útiles para implementar mutexes y otros medios de sincronización. Sin embargo, dado que Atomics.wait
es bloqueante, no es posible llamarlo en el hilo principal (intentar hacerlo lanzará un TypeError). La versión no bloqueante, Atomics.waitAsync
, también puede ser utilizada en el hilo principal.
Consulta nuestro explicador sobre las API de Atomics
para más detalles.
API de V8
Por favor utiliza git log branch-heads/8.6..branch-heads/8.7 include/v8.h
para obtener una lista de los cambios en la API.
Los desarrolladores con una versión activa de V8 pueden usar git checkout -b 8.7 -t branch-heads/8.7
para experimentar con las nuevas funciones en V8 v8.7. Alternativamente, puedes suscribirte al canal Beta de Chrome y probar las nuevas funciones tú mismo pronto.