Pré. | Proc. |
Multi-filetage - Concurrent State Regions
Les régions simultanées au sein d'un State représentent les changements d'état et le traitement qui se produisent en parallèle à l'intérieur d'un State parent global. Ceci est particulièrement utile lorsqu'une région déclenche des événements ou modifie des variables de simulation dont une autre région dépend. Par exemple, une région peut contenir une minuterie simulée qui déclenche des événements à des intervalles définis qui invoquent des changements d'état dans les States d'autres régions.
Les régions concurrentes sont essentiellement les mêmes que les forks et les Jointures avec une logique et des règles de traitement similaires.
Dans l'exemple :
- Lorsque la transition vers SalesProcess est effectuée, chaque région est activée simultanément
- Le crédit est vérifié, la commande totalisée et les marchandises requises emballées
- Cependant, en cas d'échec de la vérification du crédit, cela déclenche le passage à l'état Vente annulée ; note que lorsque cela se produit, l'état parent entier et toutes les régions possédées sont immédiatement quittés, quel que soit leur état de traitement
- Si la vérification de crédit réussit, la région passe à l'état final et une fois que les autres régions ont toutes atteint leur propre état final, l'état parent peut alors être quitté