Ответ 1
-
John Resig (из славы jQuery) имеет связку интересных примеров использования веб-работников здесь - игры, графика, криптография.
-
Другое использование - это веб-ввод-вывод - другими словами, опрос URL-адресов в фоновом режиме. Таким образом, вы не блокируете пользовательский интерфейс, ожидающий результатов опроса.
-
Еще одно практическое применение: в Беспине они используют Web Workers для выделения синтаксиса, который вы бы не хотели блокировать редактированием кода, пока вы используете приложение.
-
Из Mozilla: полезно использовать один из способов, чтобы ваш код мог выполнять вычисления с интенсивным использованием процессора без блокировки пользователя интерфейсный поток.
В качестве практического примера подумайте о приложении с большой таблицей #s (это реальный мир, BTW - взятый из приложения, которое я запрограммировал ~ 2 года назад). Вы можете изменить один # в таблице через поле ввода, а множество других чисел в разных столбцах перераспределить в довольно интенсивном процессе.
Старый рабочий процесс: Изменить #. Пойдите кофе, пока JavaScript сверкает через изменения на другие номера, и веб-страница не отвечает в течение 3 минут - после того, как я оптимизировал ее в ад и обратно. Вернитесь с кофе. Измените вторую #. Повторяйте много раз. Нажмите кнопку SAVE.
Новый рабочий процесс с рабочими может быть: Измените #. Получите сообщение о состоянии, которое что-то пересчитывается, но вы можете изменить другие #. Измените больше #s. Когда все будет сделано, подождите, пока статус не изменится на "все вычисления завершены, теперь вы можете просмотреть окончательные # и сохранить".