JavaScript · Intermediário · Inglês · Técnico
macrotask
Tarefa comum da fila do event loop, originada por timers, eventos de DOM, I/O e mensagens. Uma por vez é executada, com as microtasks esvaziadas entre elas.
Onde usar
Ajuda a prever a ordem de execução e a fatiar trabalho pesado em partes que deixam a interface respirar. Em code review, usa-se setTimeout ou um scheduler para quebrar laços longos.
Em código
// cada fatia roda como uma tarefa nova
function fatia(i) {
if (i < 3) {
console.log('fatia', i);
setTimeout(() => fatia(i + 1));
}
}
fatia(0);Exemplos
Each setTimeout callback is its own macrotask.
Cada callback de setTimeout é a sua própria macrotask.
We split the job into macrotasks so the UI stays responsive.
Dividimos o trabalho em macrotasks para a interface continuar responsiva.
Cuidado
Procurar uma API chamada macrotask: é um nome usado na prática, e a especificação fala apenas em tasks.
Sinônimos
task, tarefa
Antônimos
microtask