Event loop je mehanizem, ki omogoča enotirnem Node.js, da izvršava neblokirajoč I/O. Neprekinjeno obdeluje vrsto povratnih klicev: medtem ko se vaš JavaScript izvršava na enem niti, se operacije I/O pretovorijo, njihovi povratni klici pa se izvršijo s pomočjo zanke ob dokončanju.
Faze zanke
Vsaka iteracija ("tick") poteka skozi urejene faze, vsaka s svojo vrsto povratnih klicev:
┌───────────────────────────┐
┌─>│ timers (setTimeout) │ ← expired timer callbacks
│ ├───────────────────────────┤
│ │ pending I/O callbacks │
│ ├───────────────────────────┤
│ │ poll (I/O events) │ ← retrieve new I/O; execute their callbacks
│ ├───────────────────────────┤
│ │ check (setImmediate) │
│ ├───────────────────────────┤
└──│ close callbacks │
└───────────────────────────┘
