Assíncrono vs Multithreading: Melhor Analogia
- #Arquitetura de Sistemas
Essa é a melhor explicação por meio de analogia sobre a diferença de execução Síncrona, Assíncrona e Multithread.
Você está cozinhando em um restaurante. Um pedido chega para ovos e torradas.
- Síncrono: você cozinha os ovos, depois cozinha a torrada.
- Assíncrono, single thread: você inicia o cozimento dos ovos e define um temporizador. Você começa a cozinhar torradas e define um temporizador. Enquanto ambos estão cozinhando, você limpa a cozinha. Quando os temporizadores disparam, você tira os ovos do fogo e as torradas da torradeira e os serve.
- Multithreading Assíncrono: você contrata mais dois cozinheiros, um para cozinhar ovos e outro para cozinhar torradas. Agora você tem o problema de coordenar os cozinheiros para que eles não entrem em conflito uns com os outros na cozinha ao compartilhar recursos. E você tem que pagá-los.