Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

120
Vistas
¿Es esta la forma correcta de usar async/await?

Tengo el siguiente código:

 var execute = async (assets: DCXComposite[], session: Session) => { // this returns a response object with statusCode property. If the status Code is 200, it was a successful operation. return await session.performBatchOperation(); }; try { var assets: Composite[] = []; for (const project of projects) { assets.push(project.getComposite()); if (assets.length === 50) { var result = execute(assets); assets = []; } } } catch (err) { Logger.error('Unable to batch delete projects', { error: err }); }

¿Es así como se usa async/await? Si una de las ejecuciones falla, ¿falla todo el código y se arroja al bloque catch? ¿Significa que los próximos 50 proyectos no se ejecutan? ¿Qué sucede cuando la espera arroja un error?

El objetivo es eliminar proyectos por lotes. Estoy haciendo una llamada a la API y enviando una lista de 50 proyectos de API para que se eliminen. Si la solicitud fue exitosa, la llamada de ejecución devolverá un objeto con statusCode = 200.

about 4 years ago · Juan Pablo Isaza
1 Respuestas
Responde la pregunta

0

Si desea procesar sus proyectos secuencialmente, deteniéndose en la primera falla, luego, como sugiere el comentario de Unmitigated, simplemente await la llamada a su función de execute ( await execute(assets); ).

En el caso de que quieras lanzarlos todos en paralelo, y saber si alguno falla, puedes acumular las Promesas devueltas y esperar al grupo:

 const allResults = []; try { for (const project of projects) { // ... allResults.push(execute(/* ... */)); } // Await for ALL promises to complete, or throw at first failure await Promise.all(allResults); } catch (err) { // ... }
about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda