Sobes.tech
Middle+

Fala sobre o Event Loop: o que é, como funciona?

sobes.tech IA

Resposta da IA

Event Loop — é um mecanismo em JavaScript e outros ambientes de thread único que permite processar operações assíncronas sem bloquear o thread principal.

Como funciona:

  1. Existe uma pilha de chamadas (call stack), onde as funções a serem executadas são colocadas.
  2. Operações assíncronas (por exemplo, temporizadores, pedidos de rede) enviam seus callbacks para a fila de tarefas (task queue) após serem concluídas.
  3. O Event Loop verifica constantemente se a pilha de chamadas está vazia. Se estiver, ele pega a primeira tarefa da fila e a coloca na pilha para execução.

Dessa forma, mesmo com operações assíncronas, o código é executado sequencialmente, sem bloquear a interface do usuário ou outros processos.

Exemplo:

console.log('Start');
setTimeout(() => {
  console.log('Timeout');
}, 0);
console.log('End');

A saída será:

Start
End
Timeout

Porque o callback do setTimeout entra na fila de tarefas e é executado após a pilha de chamadas ser liberada.