Concurrent |
Concurrent |
| Power Fx |
Syntaxe
|
Concurrent( Formula1, Formula2 [, ...] )
|
Paramètres
| Nom |
Description |
| Formula1 |
Ce paramètre représente la première formule à évaluer simultanément. Ce paramètre permet de spécifier l'expression ou la fonction qui doit être exécutée en parallèle avec d'autres formules. |
| Formula2, ... |
Ce paramètre représente d'autres formules supplémentaires à évaluer simultanément. Ce paramètre permet de définir une ou plusieurs autres expressions à exécuter en parallèle avec la première. |
Description
Cette fonction permet d'évaluer plusieurs formules simultanément pour améliorer les performances de l'application.
Remarques
- La fonction Concurrent est conçue pour améliorer les performances en exécutant plusieurs formules en parallèle. Cela peut être particulièrement utile lorsqu'on
a plusieurs appels à des sources de données ou des actions indépendantes. En procédant ainsi, l'application peut réduire significativement son temps de traitement global.
- Chaque formule passée à Concurrent est évaluée simultanément, sans attendre que les autres aient terminé. Cela diffère du comportement séquentiel habituel où chaque
formule est évaluée l'une après l'autre. C'est donc une solution idéale lorsque les formules ne dépendent pas les unes des autres.
- L'usage typique de Concurrent se retrouve dans les écrans d'accueil où plusieurs jeux de données doivent être chargés en même temps. Par exemple, charger une liste de
produits, de catégories, et de promotions via trois appels de type ClearCollect. Cela accélère l'affichage initial en évitant des délais d'attente cumulés.
- Il est important de noter que Concurrent n'offre pas de garantie sur l'ordre d'exécution des formules. Si une formule dépend d'une autre (ex. une collecte utilisée
dans une seconde formule), alors Concurrent ne doit pas être utilisé. Cette fonction convient uniquement aux cas indépendants.
- Chaque formule à l'intérieur de Concurrent est isolée et ne partage pas d'état intermédiaire avec les autres pendant l'exécution. Toute tentative de lecture ou
d'écriture simultanée sur la même source de données peut produire des résultats imprévisibles. Une bonne pratique est donc de séparer clairement les contextes de chaque
formule.
- L'amélioration des performances avec Concurrent dépend du contexte de l'application et des ressources disponibles. Sur des opérations purement locales ou légères,
l'effet peut être minime. Cependant, pour les applications connectées à plusieurs sources de données, l'impact peut être significatif.
- La fonction Concurrent accepte un nombre variable de formules, ce qui permet d'optimiser plusieurs traitements à la fois. Cela évite d'empiler des appels séquentiels
lorsque ce n'est pas nécessaire. Elle offre donc une alternative puissante à l'approche traditionnelle d'exécution en série.
- Bien que Concurrent soit utile pour améliorer la réactivité, il faut l'utiliser avec précaution pour éviter des conflits ou des comportements non déterministes.
Un bon test en environnement de développement est indispensable avant son déploiement en production. Une documentation claire de l'ordre logique des dépendances reste
essentielle pour éviter les erreurs.
Dernière mise à jour : Jeudi, le 1 Mai 2025