Blocking bewerkingen draaien synchroon en houden de enige JavaScript-thread bezet totdat ze klaar zijn — ondertussen kan er niets anders draaien. Non-blocking bewerkingen starten het werk, keren onmiddellijk terug en leveren het resultaat later via een callback, Promise of event, zodat de thread vrij blijft om andere dingen te doen.
Waarom Node single-threaded is maar toch non-blocking
Jouw JavaScript draait op thread aangedreven door de . I/O (bestanden, netwerk, DNS) wordt gedelegeerd aan , dat onder de motorkap de async-voorzieningen van het OS en een kleine gebruikt. Terwijl dat werk buiten de thread gebeurt, blijft de event loop andere callbacks verwerken. Wanneer de I/O klaar is, wordt de callback in de wachtrij gezet en uitgevoerd.
