Estas son formas progresivamente más agradables de expresar trabajo no bloqueante en un solo hilo, todas impulsadas por debajo por un bucle de eventos que ejecuta los callbacks listos de uno en uno. Gestionan cuándo se reanuda el código, no múltiples hilos.
El bucle de eventos
Un bucle de un solo hilo mantiene una cola de callbacks listos. Cuando una operación asíncrona (temporizador, E/S) se completa, su callback se encola; el bucle toma el siguiente y lo ejecuta hasta el final, y luego se repite. Nada expropia a un callback en ejecución, así que un trabajo largo de CPU bloquea todo.
