Compatibilidade APIs Node.js - Timers
Explore a integração e funcionamento do módulo Timers do Node.js dentro do Azion Runtime. O módulo Timers fornece a capacidade de agendar a execução de código após um período definido ou em intervalos regulares.
O módulo timers no Node.js fornece um conjunto de funções para agendar a execução de código após um atraso especificado ou em intervalos regulares. É essencial para gerenciar operações assíncronas e controlar o tempo de execução de funções dentro de aplicações. Este módulo está disponível no Azion Runtime através da compatibilidade com Node.js, sendo comumente usado em functions para adiar trabalho, adicionar pequenos atrasos ou coordenar o tempo de tarefas assíncronas com setTimeout.
Exemplo: setTimeout básico
O exemplo abaixo mostra como usar o módulo timers em uma function:
Exemplo: Execução adiada com setTimeout
Agende operações para executar após um atraso:
Exemplo: setInterval para operações periódicas
Execute código em intervalos regulares:
Exemplo: Execução imediata com setImmediate
Execute código imediatamente após o event loop atual:
Exemplo: Timeout com cancelamento
Implemente timeouts canceláveis para chamadas de API:
Exemplo: Promises de timer (timers/promises)
Use a API moderna de timer baseada em promises:
Exemplo: Lógica de retry com backoff exponencial
Implemente padrões de retry usando timers:
APIs com suporte
| API | Status |
|---|---|
setTimeout() | 🟢 Com suporte |
clearTimeout() | 🟢 Com suporte |
setInterval() | 🟢 Com suporte |
clearInterval() | 🟢 Com suporte |
setImmediate() | 🟢 Com suporte |
clearImmediate() | 🟢 Com suporte |
timers/promises.setTimeout() | 🟢 Com suporte |
timers/promises.setInterval() | 🟢 Com suporte |
timers/promises.setImmediate() | 🟢 Com suporte |
timers.active() | 🟡 Parcialmente suportado |
timers.enroll() | 🔴 Sem suporte |
timers.unenroll() | 🔴 Sem suporte |
timers.getActive() | 🟡 Parcialmente suportado |