Window.setImmediate()

Non-standard: This feature is non-standard and is not on a standards track. Do not use it on production sites facing the Web: it will not work for every user. There may also be large incompatibilities between implementations and the behavior may change in the future.

Esse método é usado para interromper operações de longa duração e executar uma função de retorno de chamada imediatamente após o navegador ter concluído outras operações, como eventos e atualizações de exibição.

Nota: Não se espera que este método se torne padrão, e é implementado somente por compilações recentes do Internet Explorer e Node.js 0.10+. Existem resistencias de ambos Gecko (Firefox) e Webkit (Google/Apple).

Sintaxe

var immediateID = setImmediate(func, [param1, param2, ...]);
var immediateID = setImmediate(func);
  • onde immediateID é o ID da immediate que poderá ser usado depois com window.clearImmediate.
  • func é a função que será executada.

Todos parametros serão passados diretamente para sua função .

Notas

O método window.clearImmediate pode ser usado para limpar as ações immediate, como por exemplo window.clearTimeout para window.setTimeout.

Esse método pode ser usado ao invés de setTimeout(fn, 0), para executar operações pesadas.

Essa função pode ser emulada de algumas maneiras:

  • window.postMessage pode ser usada para disparar um immediate mas produzindo um callback. Tenha em mente que o Internet Explorer 8 inclui uma versão síncrona do postMessage, que não deverá ser usado como alternativa.
  • MessageChannel pode ser usado com confiança dentro de Web Workers onde a semantica do postMessage significa que não pode ser usado lá.
  • setTimeout(fn, 0)pode ser usado potencialmente, no entanto, como é apertado em 4ms para temporizadores aninhados com mais de 5 profundidades por especificação HTML, não faz para um polifil adequado para o imediatismo natural de setImmediate.

Todas essas técnicas são incorporadas em um setImmediate polyfill.

Especificação

Não faz parte de denhuma especificação.

Compatibilidade com navegadores

BCD tables only load in the browser

Ver também