Blokuojančios operacijos vykdomos sinchroniškai ir laiko vienintelę JavaScript giją, kol nesibaigia — tuo metu niekas kitas vykti negali. Neblokuojančios operacijos pradeda darbą, iškart grąžina valdymą, o rezultatą pateikia vėliau per callback, Promise ar event, todėl gija lieka laisva kitiems darbams.
Kodėl Node yra vienagijis, bet neblokuojantis
Jūsų JavaScript vykdomas gijoje, kurią valdo . I/O (failai, tinklas, DNS) perduodamas , kuris po dangčiu naudoja OS asinchronines priemones ir nedidelį . Kol tas darbas vyksta už gijos ribų, event loop toliau apdoroja kitus callback'us. Kai I/O baigiasi, jo callback įrašomas į eilę ir įvykdomas.
