Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

361
Views
¿Alguna diferencia entre await Promise.all() y multiple await?

¿Hay alguna diferencia entre:

 const [result1, result2] = await Promise.all([task1(), task2()]);

y

 const t1 = task1(); const t2 = task2(); const result1 = await t1; const result2 = await t2;

y

 const [t1, t2] = [task1(), task2()]; const [result1, result2] = [await t1, await t2];
over 4 years ago · Santiago Trujillo
1 answers
Answer question

0

Generalmente, usar Promise.all() ejecuta solicitudes "asincrónicas" en paralelo. El uso de await puede ejecutarse en paralelo O ser un bloqueo de "sincronización".

Las funciones test1 y test2 a continuación muestran cómo await puede ejecutarse de forma asíncrona o sincronizada.

test3 muestra Promise.all() que es asíncrono.

jsfiddle con resultados cronometrados : abra la consola del navegador para ver los resultados de la prueba

Comportamiento de sincronización . NO se ejecuta en paralelo, tarda ~ 1800 ms :

 const test1 = async () => { const delay1 = await Promise.delay(600); //runs 1st const delay2 = await Promise.delay(600); //waits 600 for delay1 to run const delay3 = await Promise.delay(600); //waits 600 more for delay2 to run };

Comportamiento asíncrono . Se ejecuta en paralelo, tarda ~ 600 ms :

 const test2 = async () => { const delay1 = Promise.delay(600); const delay2 = Promise.delay(600); const delay3 = Promise.delay(600); const data1 = await delay1; const data2 = await delay2; const data3 = await delay3; //runs all delays simultaneously }

Comportamiento asíncrono . Se ejecuta en paralelo, tarda ~ 600 ms :

 const test3 = async () => { await Promise.all([ Promise.delay(600), Promise.delay(600), Promise.delay(600)]); //runs all delays simultaneously };

TLDR; Si está utilizando Promise.all() , también "fallará rápidamente": dejará de ejecutarse en el momento de la primera falla de cualquiera de las funciones incluidas.

over 4 years ago · Santiago Trujillo Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!