Веб-браузеры являются довольно ресурсоемким ПО, и их активное использование приводит к стремительному падению заряда аккумулятора на портативных устройствах, таких как ноутбуки. Частично данную проблему решают блокировщики рекламы, контент-фильтры и другие расширения, которые блокируют некоторые элементы, чтобы сэкономить энергию. Однако, для большинства пользователей данная проблема остается актуальной и достаточно острой.
За последние несколько месяцев Google проводил эксперименты в Chrome по ограничению работы JavaScript в фоновых вкладках, что должно положительно сказаться на энергопотреблении браузера.
Инженеры Chrome решили проанализировать «работу популярных сайтов в фоновом режиме» и выяснили, что наибольшую нагрузку оказывают таймеры JavaScript, которые обычно «не представляют интерес для пользователя».
Основная идея заключается в снижении количества запросов от таймеров JavaScript в фоновых вкладках. На данный момент в стабильных версиях Chrome действуют ограничения на 1 срабатывание JavaScript в секунду.
Google провел несколько экспериментов с целью выяснить, смогут ли дополнительные ограничения выполнения JavaScript улучшить автономность работы портативных устройств.
Эксперимент 1: 36 популярных сайтов в фоновых вкладках, в основной вкладке открыта страница about:config
- Стандартное состояние: среднее время работы 6.4 часов
- Введены ограничения JavaScript: среднее время работы 8.2 часов
Эксперимент 2: 36 популярных сайтов в фоновых вкладках, в основной вкладке открыт Youtube
- Стандартное состояние: среднее время работы 4.7 часов
- Введены ограничения JavaScript: среднее время работы 5.3 часов
Название флага: Throttle Javascript timers in background
Описание флага: при включении флага вызовы DOM таймеров будут ограничены одним вызовом в минуту для страниц, которые остаются скрытыми более 5 минут.
Чтобы включить флаг, выполните следующие шаги:
- Перейдите на внутреннюю страницу
chrome://flags
в Chrome - Выполните поиск флага Throttle Javascript timers in background
- Установите значение для флага Enabled
- Перезапустите Chrome
Google Chrome теперь будет ограничивать таймеры JavaScript на фоновых страницах автоматически. Ограничение будет применяться к страницам, которые оставались в фоновом режиме более 5 минут.
Функция может быть представлена уже в Chrome 86 Stable.
Google планирует представить корпоративную политику для отключения данного поведения. Основная цель политики заключается в том, чтобы предоставить администраторам возможность отключить данное ограничение, если оно нарушает функциональность.
Компания проведет дополнительные тесты, чтобы выяснить, не нарушат ли данные изменения определенные функции на сайтах.
Другие браузеры на базе Chromium, такие как Microsoft Edge, Vivaldi, Brave и Opera, также получат эту функцию, если разработчики браузеров не отключат ее принудительно. Вполне вероятно, что в будущем Mozilla сможет реализовывать подобное ограничение в веб-браузере Firefox.
Улучшения, связанные с продлением времени автономной работы, всегда приветствуются пользователями. В данном случае относительно небольшие изменения позволяют значительно увеличить срок работы портативного устройства от аккумулятора.
Обновления программ, что нового
• В России запретили IP-телефонию для ограничения телефонного мошенничества
• МТС выпустила игровую приставку для облачного гейминга
• Samsung Galaxy S25: Локальная обработка ИИ на Snapdragon 8 Elite
• Масштабный сбой в работе ChatGPT и генератора видео Sora
• Роскомнадзор: вводить штрафы за использование VPN в России не планируется
• Обновление Intel ARC Game On Driver 32.0.101.6332 Non-WHQL: Исправления для процессоров Intel Core Ultra серии 2