Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

[Dúvida] Async, Await e Task Queue

Quando o JS se deparar com uma promise ele vai mandar a função async inteira para a task queue ou só a linha de código que contém o await?

1 resposta
solução!

Oi Renan!

Quando o JavaScript se depara com uma promise dentro de uma função async, ele não manda a função inteira para a task queue. O que acontece é o seguinte:

O JavaScript encontra um await, ele pausa a execução da função async até que a promise seja resolvida ou rejeitada. E durante essa pausa, a execução da função async é suspensa e o controle é devolvido ao event loop, que continua processando outras tarefas.

Por fim, quando a promise é resolvida ou rejeitada, a execução da função async é retomada a partir do ponto onde o await estava, e a linha de código seguinte é executada.

Então, apenas a linha de código que contém o await é "pausada" e a função async continua a ser executada normalmente após a resolução da promise.

Reforço que em casos de dúvidas, conte sempre com o fórum da comunidade Alura! Bons estudos!

Sucesso

Um grande abraço e até mais!

Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓. Bons Estudos!