event loop je mechanismus, který umožňuje jednovláknému Node.js provádět non-blocking I/O. Nepřetržitě zpracovává frontu callbacks: zatímco váš JavaScript běží na jednom vlákně, I/O operace jsou odsunuta a jejich callbacks jsou spuštěny smyčkou po dokončení.
Fáze smyčky
Každá iterace ("tick") prochází seřazenými fázemi, každá se svou vlastní frontou callbacks:
┌───────────────────────────┐
┌─>│ timers (setTimeout) │ ← expired timer callbacks
│ ├───────────────────────────┤
│ │ pending I/O callbacks │
│ ├───────────────────────────┤
│ │ poll (I/O events) │ ← retrieve new I/O; execute their callbacks
│ ├───────────────────────────┤
│ │ check (setImmediate) │
│ ├───────────────────────────┤
└──│ close callbacks │
└───────────────────────────┘
