~~~~~~~~~~~~~~~~~~~~ Arc.Ask3.Ru ~~~~~~~~~~~~~~~~~~~~~ 
Номер скриншота №:
✰ 431266411AD09E3C961952D674FA2C98__1716283140 ✰
Заголовок документа оригинал.:
✰ Web worker - Wikipedia ✰
Заголовок документа перевод.:
✰ Веб-работник — Википедия ✰
Снимок документа находящегося по адресу (URL):
✰ https://en.wikipedia.org/wiki/Web_worker ✰
Адрес хранения снимка оригинал (URL):
✰ https://arc.ask3.ru/arc/aa/43/98/431266411ad09e3c961952d674fa2c98.html ✰
Адрес хранения снимка перевод (URL):
✰ https://arc.ask3.ru/arc/aa/43/98/431266411ad09e3c961952d674fa2c98__translat.html ✰
Дата и время сохранения документа:
✰ 22.06.2024 17:09:05 (GMT+3, MSK) ✰
Дата и время изменения документа (по данным источника):
✰ 21 May 2024, at 12:19 (UTC). ✰ 

~~~~~~~~~~~~~~~~~~~~~~ Ask3.Ru ~~~~~~~~~~~~~~~~~~~~~~ 
Сервисы Ask3.ru: 
 Архив документов (Снимки документов, в формате HTML, PDF, PNG - подписанные ЭЦП, доказывающие существование документа в момент подписи. Перевод сохраненных документов на русский язык.)https://arc.ask3.ruОтветы на вопросы (Сервис ответов на вопросы, в основном, научной направленности)https://ask3.ru/answer2questionТоварный сопоставитель (Сервис сравнения и выбора товаров) ✰✰
✰ https://ask3.ru/product2collationПартнерыhttps://comrades.ask3.ru


Совет. Чтобы искать на странице, нажмите Ctrl+F или ⌘-F (для MacOS) и введите запрос в поле поиска.
Arc.Ask3.ru: далее начало оригинального документа

Веб-работник — Википедия Jump to content

Веб-работник

Из Википедии, бесплатной энциклопедии
Веб-работники
Положение дел Уровень жизни
Год начался 3 апреля 2009 г. ( 03.04.2009 )
Впервые опубликовано 3 апреля 2009 г. ( 03.04.2009 )
Организация
комитет ЧТОРГ
Редакторы Ян Хиксон
Домен
Веб-сайт

Веб -работник , по определению Консорциума Всемирной паутины (W3C) и Рабочей группы по технологиям веб-гипертекстовых приложений (WHATWG), представляет собой JavaScript сценарий , исполняемый с HTML- страницы, который выполняется в фоновом режиме , независимо от сценариев, которые также могли быть выполняется с той же HTML-страницы. [1] Веб-работники часто могут использовать многоядерные процессоры . более эффективно [2]

W3C и WHATWG рассматривают веб-работников как долго выполняющиеся сценарии, которые не прерываются сценариями, реагирующими на клики или другие взаимодействия с пользователем. Предотвращение прерывания таких работников действиями пользователей должно позволить веб-страницам оставаться отзывчивыми, в то время как они выполняют длительные задачи в фоновом режиме.

Спецификация веб-работника является частью HTML Living Standard. [1]

Обзор [ править ]

По замыслу WHATWG, веб-воркеры относительно тяжелы и не предназначены для использования в больших количествах. Ожидается, что они будут долговечными, с высокими затратами на начальную производительность и высокой стоимостью памяти на экземпляр. [1]

Веб-работники работают вне контекста сценариев HTML-документа. Следовательно, хотя у них нет доступа к DOM , они могут облегчить одновременное выполнение программ JavaScript.

Особенности [ править ]

Веб-работники взаимодействуют с основным документом посредством передачи сообщений . Следующий код создает Worker, который будет выполнять JavaScript в данном файле.

вар   рабочий   =   новый   работник  (  «worker_script.js»  ); 

Чтобы отправить сообщение работнику, postMessage метод рабочего объекта используется, как показано ниже.

работник  .   postMessage  (  "Привет, мир!"  ); 

The onmessage Свойство использует обработчик событий для получения информации от работника.

работник  .   onmessage   =   function  (  event  )   { 
	 alert  (  "Полученное сообщение   event.data   )  +  "  ; 
	  сделай что-нибудь  (); 
  } 
	
 function   doSomething  ()   { 
	 //выполняем работу 
	 работника  .   postMessage  (  "Работа выполнена!"  ); 
  } 

 рабочий  .   прекратить  (); 

Как только рабочий процесс завершается, он выходит из области видимости, и ссылающаяся на него переменная становится неопределенной; на этом этапе при необходимости необходимо создать нового работника.

Пример [ править ]

Простейшее использование веб-воркеров — выполнение ресурсоемкой задачи без прерывания работы пользовательского интерфейса.

В этом примере основной документ порождает веб-воркер для вычисления простых чисел и постепенно отображает последнее найденное простое число.

Основная страница выглядит следующим образом:

<!DOCTYPE html> 
 <  html  > 
  <  head  > 
   <  title  >  Пример рабочего процесса: одноядерное вычисление  </  title  > 
  </  head  > 
  <  body  > 
   <  p  >  На данный момент обнаружено наибольшее простое число:  <  output   id  =  "result "  >/  вывод  >/  p  > 
   <  script  > 
    var   worker   =   new   Worker  (  'worker.js'  ); 
     работник  .   onmessage   =   функция   (  событие  )   { 
      документ  .   getElementById  (  «результат»  ).   текстСодержимое   =   событие  .   данные  ; 
     }; 
    </  script  > 
  </  body  > 
 </  html  > 

The Worker() вызов конструктора создает веб-работника и возвращает workerобъект, представляющий этого веб-работника, который используется для связи с веб-работником. Этот объект onmessage обработчик событий позволяет коду получать сообщения от веб-воркера.

Сам веб-воркер выглядит следующим образом:

вар   п   =   1  ; 
  вар   end_value   =   10  **  7  ; 
  поиск  :   while   (  n   <=   end_value  )   { 
   n  ++  ; 
    for   (  var   i   =   2  ;   i   <=   Math  .  sqrt  (  n  );   я  ++  ) 
     , если   (  n   %   i   ==   0  ) 
       продолжить   поиск  ; 
    // найдено простое число! 
    PostMessage  (  н  ); 
  } 

Чтобы отправить сообщение обратно на страницу, postMessage() метод используется для публикации сообщения при обнаружении простого числа. [1]

Поддержка [ править ]

Если браузер поддерживает веб-воркеров, свойство Worker будет доступно в объекте глобального окна. [3] Свойство Worker будет неопределенным, если браузер его не поддерживает.

В следующем примере кода проверяется поддержка веб-работника в браузере.

функция   BrowseSupportsWebWorkers  ()   { 
   возвращает   тип   окна  .   Рабочий   ===   "функция"  ; 
  } 

Веб-воркеры в настоящее время поддерживаются Chrome , Opera , Edge , Internet Explorer (версия 10), Mozilla Firefox и Safari . [4] [5] [6] Mobile Safari для iOS поддерживает веб-работников начиная с iOS 5. Браузер Android впервые поддерживал веб-работников в Android 2.1, но поддержка была удалена в версиях Android 2.2–4.3, а затем восстановлена ​​в Android 4.4. [7] [8]

Ссылки [ править ]

  1. ^ Перейти обратно: а б с д Web Workers , WHATWG , получено 2 января 2023 г.
  2. ^ «HTML-уровень жизни» . Html.spec.whatwg.org . 30 января 2017 года . Проверено 31 января 2017 г.
  3. ^ «HTML5 в работе» Марк Пилигрим. О'Рейли/Google Press. август 2010 г.
  4. ^ «Введение в HTML5», Лоусон Б. и Шарп Р., 2011.
  5. ^ «HTML5 и CSS3» Брайан П. Хоган. ООО «Прагматичные программисты», 2010.
  6. ^ «Могу ли я использовать... Web Worker» . caniuse.com . Проверено 30 сентября 2019 г.
  7. ^ «В центре внимания: сравнение Android 2.1 с Web Workers — Isogenic Engine» . Архивировано из оригинала 19 октября 2013 года . Проверено 10 июля 2011 г.
  8. ^ «Могу ли я использовать... Таблицы поддержки HTML5, CSS3 и т. д.» . caniuse.com . Проверено 10 июня 2017 г.

Внешние ссылки [ править ]

Arc.Ask3.Ru: конец оригинального документа.
Arc.Ask3.Ru
Номер скриншота №: 431266411AD09E3C961952D674FA2C98__1716283140
URL1:https://en.wikipedia.org/wiki/Web_worker
Заголовок, (Title) документа по адресу, URL1:
Web worker - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть, любые претензии не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, денежную единицу можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)