Delay/Sleep Nativo em Funções Assíncronas no JavaScript

Delay/Sleep Nativo em Funções Assíncronas no JavaScript

Criar uma pausa programada na execução de código assíncrono é uma necessidade comum para evitar chamadas de API em excesso (rate limiting) ou gerenciar transições no front-end. A abordagem moderna utiliza uma Promise combinada com o setTimeout, permitindo pausar a execução sem bloquear a event loop do Node.js ou do navegador.

JavaScript

// Função auxiliar reutilizável para criar o delay
const sleep = (ms) => new Promise((resolve) => setTimeout(resolve, ms));

// Exemplo de uso prático dentro de uma função async
async function executarComPausa() {
  console.log('Iniciando tarefa...');

  // Aguarda 2000 milissegundos (2 segundos) antes de prosseguir
  await sleep(2000);

  console.log('Executado após 2 segundos de pausa!');
}

executarComPausa();
  • Uso de Promises: A função sleep retorna uma Promise que é resolvida automaticamente após o tempo estipulado no setTimeout.
  • Não Bloqueante: Por utilizar async/await, a pausa é não-bloqueante; a thread principal fica livre para processar outros eventos durante o tempo de espera.
  • Sintaxe em Milissegundos: O parâmetro passado para a função representa o tempo de espera em milissegundos (ex: 1000 = 1 segundo).
  • Tratamento de Erros: Caso precise cancelar o delay antes do tempo terminar, é necessário evoluir a implementação utilizando AbortController.

Thales de Oliveira Gomes

Thales de Oliveira Gomes é gestor de Tecnologia da Informação, especialista em infraestrutura de redes, computação em nuvem e operações de TI hospitalar, com mais de 18 anos de experiência na área. Graduado em Gestão de TI e pós-graduado em Engenharia de Redes e Telecomunicações, Cloud Computing, Redes de Computadores e Gestão Hospitalar, construiu uma trajetória sólida liderando projetos de alta complexidade, como a implementação e migração para nuvem de sistemas ERP de grande porte. Sua atuação no setor o levou a ser indicado ao prêmio IT Leaders Brasil na categoria Rising Leaders. Além da carreira corporativa e da paixão por tecnologia, Thales é autor independente com mais de 70 obras publicadas sobre redes, segurança da informação, Linux e física, além de criador de conteúdo no blog Vetor Tech e na plataforma CiberDicas. No universo das artes e do entretenimento, atua como produtor de música eletrônica sob o projeto Yknex, cria ilustrações digitais e compartilha walkthroughs de games no YouTube.

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *