Regroupe les informations d'erreur relatives à un processus terminé de manière inattendue avec le groupe de fonctions associé.
GÉNÉRÉ PAR IAnon vérifiéModèle : gemini-3.8-flash-medium · Effort : medium · Température : non réglable · Prompt : eaa306c71170ProvenanceQuestions ouvertes (3)
traduit du guide allemandgemini-3.8-flash-low · 2026-10-13 · Original allemand
Regroupe les informations d'erreur relatives à un processus terminé de manière inattendue avec le groupe de fonctions associé.
La structure de données ara::exec::ExecutionErrorEvent sert à encapsuler les événements d'erreur lorsqu'un processus au sein d'un groupe de fonctions se termine de manière inattendue. Pour ce faire, elle regroupe le code d'erreur spécifique du processus concerné via l'attribut executionError[SWS_EM_02545] avec le functionGroup[SWS_EM_02546] associé dans lequel l'incident est survenu. Sur cette base de données, le traitement d'erreur de niveau supérieur peut analyser le contexte et engager des mesures appropriées de redémarrage ou de mise en sécurité pour le groupe de fonctions respectif. En tant que pure structure de données, le type ne fournit aucune méthode propre et requiert une synchronisation externe en cas d'accès concurrent.
Contexte
La structure ara::exec::ExecutionErrorEvent sert, dans le module exec, à la représentation d'une erreur d'exécution survenue au sein d'un groupe de fonctions. Dans l'AUTOSAR Adaptive Platform, les processus sont structurés logiquement en groupes de fonctions afin de pouvoir commander de manière ordonnée leur état et leur cycle de vie. Si une erreur grave survient lors de l'exécution d'un processus, entraînant son arrêt inattendu, cet état est représenté sous la forme d'un événement structuré. La structure de données encapsule à cet effet les détails pertinents en reliant le code d'erreur survenu au groupe de fonctions concerné.
Les principaux partenaires d'interaction comprennent le processus concerné, dont l'interruption inattendue génère la valeur d'erreur concrète executionError[SWS_EM_02545], ainsi que le groupe de fonctions associé functionGroup dans le contexte duquel l'erreur est survenue [SWS_EM_02546]. Une instance de niveau supérieur du système global fait office de partenaire de communication supplémentaire. Interprétation : cette instance de surveillance devrait recevoir et évaluer l'événement afin d'initier des réactions coordonnées au niveau du groupe. Question (ouverte)
Diagramme de contexte : interaction des composants impliqués lors de la survenance d'une erreur d'exécution. Sources : [SWS_EM_02545], [SWS_EM_02546]
Cycle de vie
La définition en tant que struct ExecutionErrorEvent final caractérise le type comme une structure de données finale et non polymorphe, sans relations d'héritage. En tant que pur objet de données et de valeur, la structure ne possède aucune machine à états interne ni aucune phase de cycle de vie autonome. Une instance est créée sur événement précisément lorsqu'un processus se termine de manière inattendue et que cet incident est enregistré. Lors de la création, les deux variables membres publiques sont initialisées : le champ executionError avec la valeur d'erreur spécifique au système du processus [SWS_EM_02545], ainsi que le champ functionGroup avec l'instance du groupe de fonctions concerné [SWS_EM_02546].
En ce qui concerne les relations de possession, la structure est habituellement créée en tant qu'objet-valeur local et transmise aux routines de traitement et de notification, soit directement par copie de valeur, soit par références constantes. Une allocation dynamique de mémoire n'est normalement pas requise pour l'objet lui-même. La destruction s'effectue de manière déterministe lors de la sortie de la portée de la routine de traitement respective. Concernant la concurrence, la structure n'implémente aucune synchronisation d'accès propre. Interprétation : si des instances de ExecutionErrorEvent sont transmises au-delà des limites de threads, les appelants doivent synchroniser de manière externe les accès concurrents en lecture et en écriture. Question Q-839283a2c3c3e269 (ouverte)
Parcours d'utilisation
Le chemin d'utilisation typique comprend la détection, la transmission et l'évaluation de l'événement d'erreur :
Génération de l'événement : un processus surveillé au sein d'un groupe de fonctions actif s'interrompt de manière inattendue. Le système instancie ensuite un objet de type ExecutionErrorEvent.
Affectation des paramètres : les attributs sont renseignés avec les données de contexte de l'incident. La valeur d'erreur spécifique est stockée dans le champ executionError[SWS_EM_02545], tandis que functionGroup assure l'association au groupe de fonctions exécutant [SWS_EM_02546].
Transmission aux routines de traitement : l'événement initialisé est relayé à la surveillance d'erreur compétente ou à la gestion de redémarrage.
Évaluation et réaction : l'instance réceptrice analyse functionGroup[SWS_EM_02546] pour localiser le sous-système et lit executionError[SWS_EM_02545]. Interprétation : sur la base de ces informations, l'instance de surveillance devrait décider des redémarrages de processus ou d'un changement d'état du groupe de fonctions. Question (ouverte)
Scénarios d'erreur
La structure ExecutionErrorEvent ne définit elle-même aucun code d'erreur, aucune valeur de retour ni aucune exception. Elle fait exclusivement office de support d'information pour les états d'erreur survenus au niveau des processus. Le scénario d'erreur principal est donc l'arrêt inattendu d'un processus, dont la cause est représentée dans le champ executionError[SWS_EM_02545].
La précondition pour un traitement correct est que les deux variables membres soient renseignées de manière cohérente. Un événement sans erreur de processus valide [SWS_EM_02545] ou sans association à un groupe de fonctions existant [SWS_EM_02546] empêche un traitement ciblé de l'erreur. Comme postcondition de l'évaluation de l'événement, le groupe de fonctions concerné [SWS_EM_02546] doit être ramené dans un état défini et sûr.
Ce guide est basé sur la spécification AUTOSAR Adaptive Platform R25-11. Il a été préparé par un assistant de curation IA.
Diagramme de classes UML
Hohle Dreieckspfeile = Vererbung (zeigt zur Basisklasse); Klicken öffnet die jeweilige Klassenseite.
gemini-3.8-flash-low· 2026-10-13 · Original allemand