Публикации по теме 'webworker'


Веб-воркер улучшает производительность пользовательского интерфейса
JavaScript является однопоточным, он синхронно выполняет одну строку кода за раз. Нам нужно выполнять интенсивные задачи, и мы хотим, чтобы пользовательский интерфейс работал плавно со скоростью 60 кадров в секунду. Приложение получает 16 миллисекунд для запуска кода JavaScript и повторного рендеринга DOM. Таким образом, если мы запустим задачу с интенсивным использованием ЦП, тогда поток пользовательского интерфейса будет занят, и ваше приложение в это время перестанет отвечать. Мы..

Веб-воркеры для начинающих
JavaScript - это однопоточный язык, что означает, что он выполняет код по порядку и должен завершить выполнение фрагмента кода, прежде чем перейти к следующему. Для HTTP-запросов JavaScript предоставляет нам XMLHttpRequest, который не является блокирующим, но если у нас есть код, интенсивно использующий процессор, он будет блокировать основной поток до тех пор, пока он не будет выполнен, в результате чего пользовательский интерфейс не будет отвечать в течение этого периода. Один из..

v1.1.1 Асинхронный рендеринг (setTimeout)
В предыдущей итерации мы разделили компоненты: Но наша попытка поставить SearchResults компонент в очередь дорогостоящей searchEngine работы в очереди событий JavaScript и запустить его в отдельном стеке выполнения не удалась. Так как еще мы можем попытаться встать в очередь searchEngine.search ? Есть два хорошо известных метода настройки асинхронных обратных вызовов: Promises и setTimeout. Обещания Посмотрим, как это выглядит в профилировщике: Опять сорвано!..

v1.2.3 Массив веб-воркеров
Если один дополнительный поток хорош, как насчет 4? Хорошо, давайте будем честными ... теперь я просто развлекаюсь ... Но, честно говоря, эта последняя итерация действительно принесла заметный выигрыш на мобильных устройствах ... Аххх, кого это волнует! Это массив веб-воркеров! Вы видите, что для каждого оранжевого Key Character в верхней строке доступен ww рабочий поток, который немедленно запускает поиск (розовые полосы). Больше не нужно ждать завершения предыдущих поисков...