Chronologie des opérations dans les trains
Durée des opérations
entrée ou sortie
Je suis actuellement en train d’installer des lumières et du son dans mes trajets en train. Par exemple, certains sons doivent être joués lors de l’entrée ou de la poursuite du trajet.
La synchronisation (timing) est importante ici, car les opérations de départ et d’arrivée peuvent déjà être mises en place pendant le voyage en train. D’autres opérations peuvent également être commandées dans les cantons respectifs qui appartiennent au trajet.
En particulier pour le canton (bloc) cible, l’ordre des actions est important.
Appel ou traitement des opérations
Monsieur Freiwald explique le "timing" des opérations dans Forum de la manière suivante :
Viele Anwender haben die (falsche) Vorstellung, dass Operationen schön der Reihe nach ablaufen und die nächste Operation erst abgearbeitet wird, wenn die vorherige Operation vollständig abgearbeitet oder beendet wurde.
Operationen werden in einer Operationsliste aber nicht nacheinander abgearbeitet, sondern nacheinander aufgerufen. Ein kleiner aber feiner Unterschied.
Der Aufruf einer Operation erfolgt, nachdem die vorhergehende Operation aufgerufen wurde. Von diesem Moment an können diese Operation und die vorhergehende Operation parallel nebeneinander ablaufen.
Das liegt daran, dass viele Operationen gar kein definiertes oder bekanntes Ende haben. Eine Zugfahrt z.B., die endlos im Kreis gestartet wird, endet vielleicht nie (bzw. erst bei Programmende). Beim Abspielen eines Sounds ist nicht bekannt, wann dieser endet, usw.
Die Möglichkeit, Makros synchron oder asynchron aufzurufen, bildet hiervon keine Ausnahme. Wenn ein Makro synchron aufgerufen wird, so wird dem Aufruf der nachfolgenden Operation nicht etwa gewartet, bis alle Operationen im aufgerufenen Makro abgearbeitet wurden, sondern bis alle Operationen vom aufgerufenen Makro aufgerufen wurden.
Zeitverlauf
Zum zeitlichen Ablauf von Operationen wurde dieses Bild entworfen.
Abb: Operationen im Zeitverlauf
Modellbahnkollege Domapi hat uns die Beschreibung Operationen_im_Zeitverlauf.pdf zum zeitlichen Ablauf von Operationen in einer Zugfahrt zur Verfügung gestellt.
TrainController wartet nicht auf Makro-Ende
Wird in TrainController im Rahmen von Operationen ein Makro gestartet, so wird dieses Makro grundsätzlich parallel zu den weiteren Operationen abgearbeitet. Im TC-wiki-Beitrag: Makro: Abarbeitung wird diese Parallelverarbeitung umgangen.
Weblinks
- Quelle: Forum
- Erklärung: Forum
- Beschreibung: Operationen_im_Zeitverlauf.pdf
- TC-wiki: Makro: Abarbeitung
- --Wohlmannstetter 12:54, 16. Feb. 2019
- bearbeitet: Uslex (Diskussion) 07:48, 20. Aug. 2022 (CEST)