Este cambio llegará en Chrome 86 en forma de una nueva función que limitará el número de veces que JavaScript puede despertar el sistema en segundo plano. La limitación establece que un JavaScript de una página web en segundo plano sólo podrá despertar el sistema una vez por minuto, de manera similar a lo que hace Safari en macOS. La función no sólo estará disponible para Chrome en Windows, sino que también llegará a macOS, Linux, Android y Chrome OS.

Hasta 2 horas más de batería con el cambio de Chrome

Por ejemplo, entre las tareas que una web puede realizar en segundo plano se encuentra intentar averiguar si la posición del scroll en la página ha cambiado, la interacción con los anuncios, etc. Todo esto suma y al final se tiene un consumo de batería innecesario. Por ello, Google va a limitarlo, aunque va a seguir permitiendo que webs y aplicaciones que usen WebSockets o que se usen para recibir mensajes o actualizaciones sí puedan seguir realizando más de una solicitud por minuto.

Google ha hecho además una prueba para comprobar cómo afecta el cambio a la batería, abriendo 36 pestañas aleatorias y dejándolas en segundo plano, mientras que la pestaña principal es una vacía de about:blank. Como vemos en el siguiente gráfico, la diferencia es muy notoria, donde la mediana del ahorro se situó en casi 2 horas (de 6,4 a 8,2 horas, frente a 9,3 de Safari), o un 28% más.

Google-Chrome-86-Experiment

Throttle-Javascript-timers-in-background

También realizaron otra prueba reproduciendo un vídeo en la pestaña principal y con las otras 36 pestañas abiertas de fondo, y lo compararon con Safari. En este caso, el ahorro de batería fue menor, con sólo 36 minutos más (un 13%).

El ahorro de energía va a ser enorme a nivel mundial

A su vez, cuando un JavaScript realiza una activación, todos los demás que estaban a la espera pueden ejecutarse, incluso si ninguno de ellos realizó la activación. Por ello, ese será otro paso por parte de Chrome para reducir las activaciones es que, si una web lleva más de 5 minutos en segundo plano, Chrome alineará las activaciones de los últimos cinco minutos a intervalos de un minuto.

Las empresas podrán desactivar esta función con un cambio en las políticas, pero esto sólo se podrá hacer durante el primer año. Una vez pase ese primer año, Google eliminará esa política y obligará a que todo el mundo use el nuevo sistema. Los desarrolladores también podrán saber en la consola de desarrollo cuándo un JavaScript es retrasado durante más de 5 segundos.

Google Chrome es usado por más de mil millones de personas en todo el mundo, y gracias a este cambio, habrá un enorme ahorro energético a nivel mundial y una mejora de rendimiento de Chrome, tanto en baterías de portátiles como en ordenadores de sobremesa conectados a la corriente, además de otros dispositivos como móviles.

 

Fuente: The Windows Club | adslzone

 

Protege-3-