Movatterモバイル変換


[0]ホーム

URL:


  1. Tecnologia Web para desenvolvedores
  2. APIs da Web
  3. Worker

Esta página foi traduzida do inglês pela comunidade.Saiba mais e junte-se à comunidade MDN Web Docs.

View in EnglishAlways switch to English

Worker

Baseline Widely available *

This feature is well established and works across many devices and browser versions. It’s been available across browsers since ⁨julho de 2015⁩.

* Some parts of this feature may have varying levels of support.

A interfaceWorker daAPI do Web Worker representa uma tarefa em background (segundo plano) que pode ser facilmente criada e emitir mensagens de volta ao seu criador. Criar um worker é possível chamando o construtorWorker("path/to/worker/script") e especificando um script para ser executado em sua própria thread.

Um worker pode, por sua vez, gerar outros workers, contanto que estes estejam hospedados na mesmaorigem da página principal (Nota: workers aninhadosnão estão atualmente implementados no Blink). Além disso, workers podem utilizarXMLHttpRequest para E/S de rede, desde que seja estipulado que os atributosresponseXML echannel emXMLHttpRequest retornem semprenull.

Não são todas as interfaces e funções que estão disponíveis para o script associado a umWorker.

Nota:No Firefox, se você deseja utilizar workers em extensões e gostaria de ter acesso ajs-ctypes, você deveria utilizar o objetoChromeWorker .

Construtores

Worker()

Cria um worker dedicado da web que executa o script especificado na URL. Workers também podem ser construídos usandoBlobs.

Propriedades

Herda as propriedades do pai,EventTarget, e implementa as propriedades que compõem oAbstractWorker.

Manipuladores de Eventos

AbstractWorker.onerror

UmEventListener é chamado sempre quando umErrorEvent do tipoerror é passado através do worker. Este é herdado peloAbstractWorker.

Worker.onmessage

UmEventListener é chamado sempre quando umMessageEvent do tipomessage é passado através do worker — ou seja, quando uma mensagem é enviada para o documento pai do worker viaDedicatedWorkerGlobalScope.postMessage. A mensagem é armazenada na propriedade de dados do eventodata.

Métodos

Os métodos são herdados de seu pai.EventTarget, e implementa os métodos deAbstractWorker.

Worker.postMessage()

Envia uma mensagem — qual pode consistir de qualquer objeto do JavaScript — para o escopo interno do worker.

Worker.terminate()

Imediatamente encerra o worker. Isso não oferece ao worker a oportunidade de concluir suas operações; imediatamente o interrompe.ServiceWorker não suportam esse método.

Eventos

message

O evento é disparado quando o script pai do worker recebe uma mensagem do mesmo.Também é disponibilizado viaonmessage.

messageerror

Dispara quando um Worker recebe uma mensagem que não pode serdeserializadaTambém é disponibilizado viaonmessageerror.

rejectionhandled

Dispara sempre que umPromise é rejeitado, indenpendentemente de haver ou não um manipulador para capturar sua rejeição.Também é disponibilizado viaonrejectionhandled.

unhandledrejection

Dispara sempre que umPromise rejeita, independentemente de haver ou não um manipulador para capturar a rejeição. Também disponível por meio da propriedade do manipulador de eventosonunhandledrejection.

Exemplos

The following code snippet shows creation of aWorker object using theWorker() constructor and usage of the object:

js
var myWorker = new Worker("worker.js");var first = document.querySelector("#number1");var second = document.querySelector("input#number2");first.onchange = function () {  myWorker.postMessage([first.value, second.value]);  console.log("Message posted to worker");};

For a full example, see ourBasic dedicated worker example (run dedicated worker).

Especificações

Specification
HTML
# dedicated-workers-and-the-worker-interface

Compatibilidade com navegadores

See also

Help improve MDN

Learn how to contribute

This page was last modified on byMDN contributors.


[8]ページ先頭

©2009-2025 Movatter.jp