compartilhada entre várias tarefas – Código pára e volta a executar em função de notificações de entrada e saída • Multitarefa cooperativa • Tudo roda em um só thread
fácil de escrever que código multithread • Mais econômico que multiprocessos • Aproveita a capacidade de I/O e melhor utiliza a CPU disponível • Centenas de operações em um único programa
arquivos, DNS, etc) – Disco – Banco de dados – Problemas onde o tempo que se passa esperando pela entrada e/ou a saída é maior que o tempo de processamento
devem executar • Quando código assíncrono é chamado, o loop de eventos passa o controle para esta função. • Quando está chama await ou retorna, o controle volta ao loop • O código é reativado quando um evento acontece, como I/O, timers, etc