Next: 5.1.9.4 Définition de nouvelles
Up: 5.1.9 Objets fonctionnels du
Previous: 5.1.9.2 Action
  Contents
Globalement, une action est chronologiquement:
- candidate, si une *méthode C++* d'une classe existante
peut être raccrochée directement à cette action (sa
définition C++ doit notamment retourner un xyzRessource *) - par extension,
on parlerai de méthode candidate (et donc d'action candidate),
- exportée, si une méthode candidate dispose d'un
nom de méthode commencant par une majuscule. De plus, il faut insérer
certaines macros permettant l'exportation à proprement parler :
voir pour cela les macros XYZ_ACTION_DEFINE, XYZ_ACTION_IMPLEMENT, etc. ainsi
que la méthode addAction(...); de l'acteur.
- schédulée si l'action est en attente
d'exécution physique; deux conditions peuvent amener à cet état :
- soit l'action commence dans le futur (c'est le cas de la
première action schédulée : le Big Bang(); le Big Bang est
schédulé dès la création de l'univers, et il n'est effectif qu'au bou
de la 4eme heure, je crois; mais bref, c'est un exemple).
- soit l'action est atomique et dispose d'une durée fixée.
Dans ce cas, le scheduler attend que cette durée soit écoulée avant d'exécuter
physiquement l'action.
- pré-exécutée (cette étape ne réalise rien pour
l'instant; elle prépare simplement la
(cannonalisation)> des action);
- l'action est physiquement exécutée (sa méthode go() est
sollicitée);
- post-exécutée (même remarque que pour la
pré-exécution).
La vie d'une action dépend de son comportement d'action ou
comportement. Il s'agit d'un nombre entier, traité via des
masques de bits), comprend notamment la spécification action
atomique/discrète et
éventuellement d'autres paramêtres (par
exemple toute action peut avoir au moins une spécification
*complémentaire* : il a semblé interressant de définir des actions
persistantes, qui seraient, par exemple, des actions
atomiques regénérées
automatiquement par le scheduler (avec une durée identique, dans un premier
temps) une fois que leur exécution physique a été effectuée.
Next: 5.1.9.4 Définition de nouvelles
Up: 5.1.9 Objets fonctionnels du
Previous: 5.1.9.2 Action
  Contents
fred@linuxtribe.org