Загрузить в фоновой вкладке Chrome
Я использую испарение для загрузки материала в s3, и нужно загрузить много файлов. Я действительно хочу, чтобы этот процесс был беспроблемным для пользователя. Но есть одна проблема. В Google Chrome есть функция дорогостоящих фоновых таймеров Throttle, которая резко снижает производительность процесса.
У меня было несколько идей, как решить эту проблему:
- Попросите пользователя отключить регулирование для вкладки. Но я не нашел способа сделать это для конкретной вкладки и в каком-то стиле разрешений Mobile. Все, что вы можете сделать как разработчик, - это показать пользователю руководство о том, как это сделать, перейдя в
chrome://flags/#expensive-background-timer-throttling
страницу и вручную измените флаг. - Воспроизведение видео / аудио на странице отключает троттлинг согласно документации. Хотя кажется хакерским:-\
Буду рад выслушать любые советы, как разрешить эту ситуацию. Может быть, кто-то уже сталкивался с такой же проблемой и имеет опыт ее решения?
1 ответ
Решение
Веб-воркеры решают проблему. Однако вам нужно поместить весь код внутрь. Итак, если вы запускаете тяжелые вычисления за пределами веб-воркера, эти триггеры БУДУТ регулироваться. Если вы запускаете вычисления вне веб-воркера - все работает нормально.