Maison > interface Web > js tutoriel > le corps du texte

## Promise.all() exécute-t-il les promesses séquentiellement ou en parallèle ?

Patricia Arquette
Libérer: 2024-10-26 11:27:29
original
661 Les gens l'ont consulté

## Does Promise.all() Execute Promises Sequentially or in Parallel?

Parallèle ou séquentiel : la nature de Promise.All() dans Node.js

Une question se pose concernant le processus d'exécution de Promise. all() dans Node.js. Gère-t-il les promesses de manière séquentielle ou simultanée ?

Q1 : Traitement séquentiel ou parallèle ?

La documentation laisse place à l'ambiguïté, alors clarifions : Promise.all(iterable) n'exécute pas toutes les promesses séquentiellement comme une chaîne de promesses (par exemple, p1.then(p2).then(p3)...) et ne les exécute pas toutes en parallèle. Il attend plutôt la résolution de plusieurs promesses.

Q2 : Réaliser l'exécution séquentielle

Si Promise.all() manque de capacités séquentielles, existe-t-il une alternative ?

Pour un ensemble de promesses existant, il n'existe aucun moyen natif d'appliquer une exécution séquentielle. Cependant, si vous disposez d'un itérable de fonctions asynchrones, vous pouvez créer une chaîne d'exécution séquentielle en utilisant Array::reduce:

iterable.reduce((p, fn) => p.then(fn), Promise.resolve())
Copier après la connexion

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal