Microtask Queue

JavaScript 🟡 Mid

Definition

File prioritaire qui contient les callbacks de Promises (.then/.catch/.finally), MutationObserver et queueMicrotask. Videe entierement avant chaque macrotask.

Analogie

Les clients VIP qui passent devant tout le monde a chaque tour de service.

Exemple de code

queueMicrotask(() => console.log('micro 1'));
setTimeout(() => console.log('macro'), 0);
queueMicrotask(() => console.log('micro 2'));
// micro 1, micro 2, macro

Cas d'usage

Executer du code juste apres l'operation courante mais avant le prochain rendu ou timer.

Anti-pattern

Creer des microtasks en boucle infinie qui bloquent completement la macrotask queue et le rendu.
#core#interview#async