Estävät (blocking) operaatiot suoritetaan synkronisesti ja pitävät yksittäistä JavaScript-säiettä varattuna, kunnes ne valmistuvat — sillä välin mikään muu ei voi suoriutua. Ei-estävät (non-blocking) operaatiot käynnistävät työn, palaavat välittömästi ja toimittavat tuloksen myöhemmin callbackin, Promisen tai tapahtuman kautta, joten säie pysyy vapaana tekemään muita asioita.
Miksi Node on yksisäikeinen mutta silti ei-estävä
JavaScript-koodisi suoritetaan säikeellä, jota ohjaa . I/O (tiedostot, verkko, DNS) delegoidaan :lle, joka käyttää käyttöjärjestelmän asynkronisia toimintoja ja pientä konepellin alla. Kun tuo työ tapahtuu säikeen ulkopuolella, event loop jatkaa muiden callbackien käsittelyä. Kun I/O valmistuu, sen callback laitetaan jonoon ja suoritetaan.
