DEENESPTFRRUARHIKOZHNL

classe ara::phm::RecoveryAction

[SWS_PHM_01140] Upstream: RS_HM_09159

class RecoveryAction {...};

RecoveryAction abstract class.

Header-Datei#include "ara/phm/recovery_action.h"
Forwarding-Header#include "ara/phm/phm_fwd.h"
Scopenamespace ara::phm

Guide utilisateurGÉNÉRÉ PAR IA

Permet aux applications de fournir et d'exécuter des actions de reprise lors d'erreurs de surveillance du PHM.
GÉNÉRÉ PAR IA non vérifié Modèle : gemini-3.8-flash-medium · Effort : medium · Température : non réglable · Prompt : 1c1f80bf2db1 Provenance Questions ouvertes (2)
traduit du guide allemandgemini-3.8-flash-low · 2026-10-13 · Original allemand

Permet aux applications de fournir et d'exécuter des actions de reprise lors d'erreurs de surveillance du PHM.

La classe abstraite ara::phm::RecoveryAction permet aux applications de fournir des actions de reprise spécifiques à l'application pour le Platform Health Management [SWS_PHM_01141]. Après l'instanciation, l'appel de Offer() active la disponibilité de réception pour le démon Phm, de sorte que la méthode surchargée RecoveryHandler est appelée en cas d'erreurs de surveillance détectées [SWS_PHM_01143]. Si l'erreur ne peut pas être corrigée côté application, le système déclenche une escalade en activant le watchdog. Les opérations de copie et de déplacement sont totalement interdites pour des raisons de sécurité, et les appels de gestion tels que Offer() ne sont pas thread-safe.

Contexte

La classe ara::phm::RecoveryAction est une classe de base abstraite du module Platform Health Management (PHM) de l'AUTOSAR Adaptive Platform. Elle sert d'interface standardisée pour les applications fonctionnelles afin de fournir des mesures spécifiques de reprise et de traitement d'erreurs déclenchées par le PHM lors de la détection d'erreurs de surveillance.

Parmi les principaux partenaires d'interaction figurent :

  • Le composant applicatif dérivé : Interprétation : celui-ci devrait typiquement se situer dans le State Management, car celui-ci est responsable des réactions coordonnées du système et est explicitement nommé dans le contexte de l'erreur. Question Q-714ff81a33aa3e92 (ouverte) L'application implémente la résolution d'erreur spécifique à l'application en surchargeant la méthode RecoveryHandler [SWS_PHM_01142].
  • Le démon Phm : gère l'enregistrement des actions de reprise via Offer [SWS_PHM_01143] et pilote l'appel du gestionnaire enregistré [SWS_PHM_01142] en cas d'erreurs constatées.
  • Le watchdog : si la reprise côté application ne peut pas être menée à bien, le PHM prend en charge la suite du traitement de l'erreur et déclenche le watchdog à des fins de sécurisation [SWS_PHM_01142].

La liaison logique avec le modèle AUTOSAR s'effectue lors de l'instanciation par l'intermédiaire d'un ara::core::InstanceSpecifier, qui doit pointer vers un PPortPrototype d'une interface PhmRecoveryAction [SWS_PHM_01141].

Cycle de vie

Une instance est créée via le constructeur explicite en transmettant le spécificateur d'instance approprié [SWS_PHM_01141]. Ce constructeur est thread-safe (thread-safe) et sécurisé vis-à-vis des exceptions (noexcept).

Étant donné qu'une RecoveryAction est liée de manière fixe à un port spécifique, les opérations de copie et de déplacement sont totalement interdites : le constructeur de copie [SWS_PHM_01150] tout comme l'opérateur d'assignation par copie [SWS_PHM_01152] sont supprimés (= delete). De même, le constructeur de déplacement [SWS_PHM_01149] et l'opérateur d'assignation par déplacement [SWS_PHM_01151] sont supprimés. La spécification justifie cela par le fait qu'un déplacement après la publication de l'instance pourrait conduire à ce que le RecoveryHandler soit appelé avant la construction complète de la classe dérivée, ce qui entraînerait un comportement indéfini ou des exceptions non gérées et compromettrait la sécurité du système [SWS_PHM_01149], [SWS_PHM_01151].

Le cycle de vie comprend deux états distincts :

  • Non proposé : immédiatement après la construction ainsi qu'après l'appel de StopOffer [SWS_PHM_01144], l'instance est inactive. Les appels de RecoveryHandler sont interdits.
  • Proposé : par l'appel de Offer() [SWS_PHM_01143], l'action est activée auprès du démon Phm et déverrouillée pour les appels de gestionnaires.

L'objet est libéré via le destructeur virtuel [SWS_PHM_01145]. En ce qui concerne la concurrence, le constructeur et le RecoveryHandler sont spécifiés comme étant thread-safe, tandis que Offer(), StopOffer() et le destructeur ne sont pas thread-safe (not thread-safe) [SWS_PHM_01141], [SWS_PHM_01142], [SWS_PHM_01143], [SWS_PHM_01144], [SWS_PHM_01145]. Interprétation : avant la destruction d'une instance, il devrait toujours être nécessaire, en pratique, d'appeler StopOffer() afin d'exclure avec certitude les appels asynchrones de gestionnaires pendant la désallocation de l'objet. Question Q-a1f47898bed925fd (ouverte)

diag_recovery_lifecycle NichtAngeboten Non proposé Angeboten Angeboten NichtAngeboten->Angeboten Offer() Angeboten->NichtAngeboten StopOffer() Angeboten->Angeboten RecoveryHandler()

Diagramme d'états : états du cycle de vie de RecoveryAction avec activation par Offer et désactivation par StopOffer. Sources : [SWS_PHM_01141], [SWS_PHM_01143], [SWS_PHM_01144], [SWS_PHM_01145]

Parcours d'utilisation

L'utilisation typique s'articule selon une séquence d'appels définie :

  1. Définition d'une classe dérivée qui implémente la fonction membre virtuelle pure RecoveryHandler [SWS_PHM_01142].
  2. Instanciation de l'objet dérivé en spécifiant le spécificateur d'instance [SWS_PHM_01141].
  3. Appel de Offer() pour mettre à disposition l'action de reprise auprès du démon Phm [SWS_PHM_01143].
  4. Réaction aux erreurs : si le PHM détecte une erreur, il appelle RecoveryHandler(executionError, supervision) [SWS_PHM_01142]. La méthode fournit un ara::core::Future<void> par l'intermédiaire duquel le résultat du traitement d'erreur est notifié.
  5. Appel de StopOffer() dès que l'instance ne doit plus traiter d'actions de reprise [SWS_PHM_01144].
  6. Destruction de l'objet via le destructeur [SWS_PHM_01145].
Nutzungsablauf von ara::phm::RecoveryActionApplicationRecoveryActionPhm-DaemonRecoveryAction(instance)Offer()Aktion anmeldenBestaetigungResult<void> (Erfolg)Use Case: Fehlerbehandlung durch PHMRecoveryHandler(executionError, supervision)Future<void>Use Case: Désenregistrement et démantèlementStopOffer()~RecoveryAction()

Diagramme de séquence : ordre d'appel typique lors de l'enregistrement, de la notification d'erreur et du désenregistrement d'une action de reprise. Sources : [SWS_PHM_01141], [SWS_PHM_01142], [SWS_PHM_01143], [SWS_PHM_01144], [SWS_PHM_01145]

Scénarios d'erreur

Dans le cadre de la configuration du modèle et de l'exploitation, des conditions d'erreur spécifiques doivent être prises en compte :

  • Violations de modèle et de validation lors de la construction [SWS_PHM_01141] :
    • AraNotInitializedViolation : l'environnement d'exécution ARA n'a pas été initialisé avant l'instanciation.
    • InstanceSpecifierMappingIntegrityViolation : le spécificateur d'instance ne peut pas être résolu dans le modèle ou ne référence pas un PortPrototype.
    • PortInterfaceMappingViolation : le prototype de port référencé via RecoveryNotificationToPPortPrototypeMapping n'est pas typé par un PhmSupervisionRecoveryNotificationInterface.
    • ProcessMappingViolation : aucun processus modélisé de manière adéquate n'existe à l'exécution pour l'Instance-Ref.
    • InstanceSpecifierAlreadyInUseViolation : le spécificateur d'instance est déjà utilisé au sein du processus actuel.
  • Erreurs de communication lors de l'offre [SWS_PHM_01143] : Si la communication avec le démon Phm échoue, Offer() renvoie un résultat avec le code d'erreur PhmErrc::kOfferFailed.
  • Erreurs irrécupérables lors de la récupération [SWS_PHM_01142] : Si le State Management ne parvient pas à résoudre l'erreur signalée, le Future renvoyé par RecoveryHandler renvoie l'erreur PhmErrc::kSMCanNotHandleRecovery. Le Platform Health Management intervient alors et déclenche le watchdog.

Ce guide de classe a été généré par un assistant de curation IA sur la base de la spécification AUTOSAR R25-11.

Carte des membres

Constructeurs et destructeur

2

Opérateurs

1

Diagramme de classes

Hohle Dreieckspfeile = Vererbung (zeigt zur Basisklasse); Klicken öffnet die jeweilige Klassenseite.

G nara__phm__RecoveryAction85 RecoveryAction + RecoveryAction() + operator=() + ~RecoveryAction() + Offer() + RecoveryHandler() + StopOffer()

Vue détaillée

Sélectionnez une entrée dans le plan.

Constructeurs et destructeur

RecoveryAction fonction 3

Creation of an RecoveryAction.

Surcharges RecoveryAction 3
explicit RecoveryAction (const ara::core::InstanceSpecifier &instance) noexcept; SWS_PHM_01141
RecoveryAction (RecoveryAction &&ra)=delete; SWS_PHM_01149
RecoveryAction (const RecoveryAction &)=delete; SWS_PHM_01150

Destructor for RecoveryAction.

virtual ~RecoveryAction () noexcept;

Méthodes

Offer fonction

Enables potential invocations of RecoveryHandler.

ara::core::Result< void > Offer () noexcept;

RecoveryHandler to be invoked by PHM. The handler invocation needs to be enabled before by a call of RecoveryAction::Offer.

virtual ara::core::Future< void > RecoveryHandler (const ara::exec::ExecutionErrorEvent &executionError, TypeOfSupervision supervision) noexcept=0;
StopOffer fonction

Disables invocations of RecoveryHandler.

void StopOffer () noexcept;

Opérateurs

operator= fonction 2

The move assignment operator for the RecoveryAction shall not be used. Rationale: Using the move assignment after a RecoveryAction instance has been offered may result in premature invocation of RecoveryHandler before the derived class is fully constructed. This can lead to undefined behavior or unhandled exceptions, compromising system stability and safety.

Surcharges = 2
RecoveryAction & operator= (RecoveryAction &&ra)=delete; SWS_PHM_01151
RecoveryAction & operator= (const RecoveryAction &)=delete; SWS_PHM_01152

Documentation des méthodes

fonction Offer [SWS_PHM_01143] Upstream: RS_HM_09159, RS_AP_00159

ara::core::Result< void > Offer () noexcept;

Enables potential invocations of RecoveryHandler.

GÉNÉRÉ PAR IA non vérifié Modèle : gemini-3.8-flash-medium · Effort : medium · Température : non réglable · Prompt : e0343e0b39c4 Provenance
traduit du guide allemandgemini-3.8-flash-low · 2026-10-13 · Original allemand

La méthode sans paramètre Offer appartient à la classe ara::phm::RecoveryAction et est intégrée via le fichier d'en-tête ara/phm/recovery_action.h [SWS_PHM_01143]. Son but est de mettre le service à disposition du Platform Health Management (PHM) afin de permettre des appels ultérieurs du RecoveryHandler [SWS_PHM_01143]. L'appel s'effectue de manière synchrone et ne prend aucun paramètre [SWS_PHM_01143].

Le résultat de l'exécution est renvoyé sous forme de ara::core::Result<void> [SWS_PHM_01143]. À l'état sans erreur, ce Result est vide. Si la communication avec le démon PHM échoue, le service ne peut pas être proposé et la fonction renvoie le code d'erreur PhmErrc::kOfferFailed avec une sémantique de rollback [SWS_PHM_01143].

En ce qui concerne la sécurité d'exécution, la méthode est spécifiée comme noexcept et sûre face aux exceptions (exception safe) [SWS_PHM_01143]. Elle est toutefois explicitement définie comme non sûre pour les threads (not thread-safe) [SWS_PHM_01143].

Dans l'ensemble du système, il existe un couplage direct avec le traitement des erreurs : le RecoveryHandler de la classe ara::phm::RecoveryAction sert à réagir aux erreurs d'exécution (ara::exec::ExecutionErrorEvent) et aux erreurs de surveillance (TypeOfSupervision) [SWS_PHM_01142]. Le PHM ne peut appeler ce gestionnaire qu'après que l'activation a été préalablement et explicitement débloquée via RecoveryAction::Offer [SWS_PHM_01142].

Cette note d'utilisation a été générée automatiquement sur la base de la spécification.

Header-Datei#include "ara/phm/recovery_action.h"
Scopeclass ara::phm::RecoveryAction
Exception-Sicherheitexception safe
Thread-Sicherheitnot thread-safe

Rückgabewert

TypBeschreibung
ara::core::Result< void >A Result, being either empty or containing any of the errors defined below.

Fehler

FehlercodeBeschreibung
PhmErrc::kOfferFailedrollback_semantics Service could not be offered due to failure of communication with Phm daemon

Request a governed re-review of this record. The record is not changed immediately.

Record
AUTOSAR/AP/record/SWS_PHM_01143
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_PHM_01143@rel:R25-11#0eb79249
Content hash
0eb79249
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_PlatformHealthManagement.pdf#nameddest=SWS_PHM_01143
Status: valid/unmigrated Version: rel:R25-11#d8dd83b4 Versionshistorie & Revisions (1 transition, 8 revision)
Current State
valid/unmigrated
Reason
mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record
Campaign
2026-08-13-status-backfill
Active Version
AUTOSAR/AP/record/SWS_PHM_01143@rel:R25-11#d8dd83b4
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#857c7b2e2026-09-30
  • R19-11rel:R19-11#ca5925372026-10-14
  • R20-11rel:R20-11#17739ebd2026-10-14
  • R21-11rel:R21-11#da1133fa2026-10-14
  • R22-11rel:R22-11#cf1368c72026-10-14
  • R23-11rel:R23-11#86ed8de42026-10-14
  • R24-11rel:R24-11#d8dd83b42026-10-14
  • R25-11rel:R25-11#d8dd83b42026-10-14 active
DateActorTransitionReason / RationaleCampaign
2026-08-13toolnone → valid/unmigratedmechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record2026-08-13-status-backfill

fonction RecoveryAction [SWS_PHM_01141] Upstream: RS_HM_09159, RS_AP_00159, RS_AP_00170, RS_AP_00171, RS_AP_00172, RS_AP_00173

explicit RecoveryAction (const ara::core::InstanceSpecifier &instance) noexcept;

Creation of an RecoveryAction.

Header-Datei#include "ara/phm/recovery_action.h"
Scopeclass ara::phm::RecoveryAction
Exception-Sicherheitexception safe
Thread-Sicherheitthread-safe
Verletzungen (Violations)AraNotInitialized- Violation message that is sent in case a constructor or function Violation checks for an initialized ara and identifies that ara is not initialized. InstanceSpeci- InstanceSpecifier either cannot be resolved in the model in the fierMappingIn- context of your executable, or it refers to a model element other tegrityViolation than a PortPrototype. PortInterfaceMap- A PortPrototype that is referenced by a pingViolation RecoveryNotificationToPPortPrototypeMapping needs to be typed by a PhmSupervisionRecoveryNotificationInterface. ProcessMappingVio- Matching InstanceRef exists, but no matching (modelled) Process lation found that matches the (runtime) process. InstanceSpecifier- Violation message that is sent in case a constructor in the ara AlreadyInUseViola- framework was called with an InstanceSpecifier already in use in tion this process.

Parameter (in)

ParameterBeschreibung
instanceinstance specifier to the PPortPrototype of a PhmRecoveryAction Interface

Request a governed re-review of this record. The record is not changed immediately.

Record
AUTOSAR/AP/record/SWS_PHM_01141
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_PHM_01141@rel:R25-11#eb0633c7
Content hash
eb0633c7
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_PlatformHealthManagement.pdf#nameddest=SWS_PHM_01141
Status: valid/unmigrated Version: rel:R25-11#a1bff3f3 Versionshistorie & Revisions (1 transition, 8 revision)
Current State
valid/unmigrated
Reason
mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record
Campaign
2026-08-13-status-backfill
Active Version
AUTOSAR/AP/record/SWS_PHM_01141@rel:R25-11#a1bff3f3
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#f5f6a77d2026-09-30
  • R19-11rel:R19-11#415751492026-10-14
  • R20-11rel:R20-11#0bb740092026-10-14
  • R21-11rel:R21-11#0bb740092026-10-14
  • R22-11rel:R22-11#9ba3238f2026-10-14
  • R23-11rel:R23-11#d99db8452026-10-14
  • R24-11rel:R24-11#4bbb0aac2026-10-14
  • R25-11rel:R25-11#a1bff3f32026-10-14 active
DateActorTransitionReason / RationaleCampaign
2026-08-13toolnone → valid/unmigratedmechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record2026-08-13-status-backfill

fonction RecoveryAction [SWS_PHM_01149] Upstream: RS_HM_09159, RS_AP_00159

RecoveryAction (RecoveryAction &&ra)=delete;

The move constructor operator for the RecoveryAction shall not be used. Rationale: Using the move constructor after a RecoveryAction instance has been offered may result in premature invocation of RecoveryHandler before the derived class is fully constructed. This can lead to undefined behavior or unhandled exceptions, compromising system stability and safety

Header-Datei#include "ara/phm/recovery_action.h"
Scopeclass ara::phm::RecoveryAction

Request a governed re-review of this record. The record is not changed immediately.

Record
AUTOSAR/AP/record/SWS_PHM_01149
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_PHM_01149@rel:R25-11#f41aea88
Content hash
f41aea88
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_PlatformHealthManagement.pdf#nameddest=SWS_PHM_01149
Status: valid/unmigrated Version: rel:R25-11#ad5dcd6d Versionshistorie & Revisions (1 transition, 7 revision)
Current State
valid/unmigrated
Reason
mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record
Campaign
2026-08-13-status-backfill
Active Version
AUTOSAR/AP/record/SWS_PHM_01149@rel:R25-11#ad5dcd6d
Point-in-Time History:
Recorded Revisions (7):
  • R25-11rel:R25-11#174faeae2026-09-30
  • R20-11rel:R20-11#388d41232026-10-14
  • R21-11rel:R21-11#388d41232026-10-14
  • R22-11rel:R22-11#cfcda3ac2026-10-14
  • R23-11rel:R23-11#75ceb7ff2026-10-14
  • R24-11rel:R24-11#1ab59f662026-10-14
  • R25-11rel:R25-11#ad5dcd6d2026-10-14 active
DateActorTransitionReason / RationaleCampaign
2026-08-13toolnone → valid/unmigratedmechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record2026-08-13-status-backfill

fonction RecoveryAction [SWS_PHM_01150] Upstream: RS_HM_09159

RecoveryAction (const RecoveryAction &)=delete;

The copy constructor for RecoveryAction shall not be used.

Header-Datei#include "ara/phm/recovery_action.h"
Scopeclass ara::phm::RecoveryAction

Request a governed re-review of this record. The record is not changed immediately.

Record
AUTOSAR/AP/record/SWS_PHM_01150
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_PHM_01150@rel:R25-11#fad0b2be
Content hash
fad0b2be
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_PlatformHealthManagement.pdf#nameddest=SWS_PHM_01150
Status: valid/unmigrated Version: rel:R25-11#fe708e57 Versionshistorie & Revisions (1 transition, 7 revision)
Current State
valid/unmigrated
Reason
mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record
Campaign
2026-08-13-status-backfill
Active Version
AUTOSAR/AP/record/SWS_PHM_01150@rel:R25-11#fe708e57
Point-in-Time History:
Recorded Revisions (7):
  • R25-11rel:R25-11#9fad0d072026-09-30
  • R20-11rel:R20-11#73566a6f2026-10-14
  • R21-11rel:R21-11#73566a6f2026-10-14
  • R22-11rel:R22-11#06e07d412026-10-14
  • R23-11rel:R23-11#c100fbf82026-10-14
  • R24-11rel:R24-11#fe708e572026-10-14
  • R25-11rel:R25-11#fe708e572026-10-14 active
DateActorTransitionReason / RationaleCampaign
2026-08-13toolnone → valid/unmigratedmechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record2026-08-13-status-backfill

fonction RecoveryHandler [SWS_PHM_01142] Upstream: RS_HM_09159, RS_AP_00159

virtual ara::core::Future< void > RecoveryHandler (const ara::exec::ExecutionErrorEvent &executionError, TypeOfSupervision supervision) noexcept=0;

RecoveryHandler to be invoked by PHM. The handler invocation needs to be enabled before by a call of RecoveryAction::Offer.

GÉNÉRÉ PAR IA non vérifié Modèle : gemini-3.8-flash-medium · Effort : medium · Température : non réglable · Prompt : 4d5e12f6a819 Provenance
traduit du guide allemandgemini-3.8-flash-low · 2026-10-13 · Original allemand

La méthode virtuelle pure RecoveryHandler dans ara::phm::RecoveryAction sert de callback asynchrone appelé par le Platform Health Management (PHM) dès qu'une surveillance échoue [SWS_PHM_01142]. Lors de l'appel, le PHM transmet l'événement d'erreur executionError avec des informations détaillées pour la récupération ainsi que le type de la surveillance élémentaire ayant échoué via le paramètre supervision [SWS_PHM_01142].

Des conditions d'ordonnancement et de concurrence strictes s'appliquent à l'utilisation et au cycle de vie :

  • Activation : les appels du gestionnaire doivent être préalablement et explicitement activés via RecoveryAction::Offer [SWS_PHM_01142], [SWS_PHM_01143]. Ils peuvent être à nouveau désactivés via StopOffer [SWS_PHM_01144].
  • Intégrité de l'objet : le constructeur de déplacement ainsi que l'opérateur d'assignation par déplacement de RecoveryAction sont tous deux supprimés (=delete), afin d'éviter qu'après la mise à disposition de l'action, des appels prématurés du gestionnaire ne soient exécutés sur des classes dérivées encore incomplètement construites [SWS_PHM_01149], [SWS_PHM_01151].
  • Sécurité des threads : la méthode elle-même est spécifiée comme étant thread-safe et sûre vis-à-vis des exceptions [SWS_PHM_01142], tandis que Offer et StopOffer ne sont pas thread-safe [SWS_PHM_01143], [SWS_PHM_01144].

Le retour s'effectue de manière asynchrone via un ara::core::Future<void> [SWS_PHM_01142]. Si la récupération a réussi, le future est complété avec void. Si le State Management ne peut pas effectuer la récupération, le future échoue avec le code d'erreur PhmErrc::kSMCanNotHandleRecovery ; dans ce cas, le Platform Health Management intervient et déclenche le watchdog [SWS_PHM_01142].

Ce texte a été généré par une IA sur la base de la spécification AUTOSAR R25-11.

Guide de l'implémenteur à venir (complexité I1)

Header-Datei#include "ara/phm/recovery_action.h"
Scopeclass ara::phm::RecoveryAction
Exception-Sicherheitexception safe
Thread-Sicherheitthread-safe

Parameter (in)

ParameterBeschreibung
executionErrorInformation on detected error, shall give further information for error recovery.
supervisionThe type of elementary supervision which failed.

Rückgabewert

TypBeschreibung
ara::core::Future< void >void if recovery is successful, otherwise it returns kSMCanNot HandleRecovery error

Fehler

FehlercodeBeschreibung
PhmErrc::kSMCanNotHandleRecoveryrollback_semantics State Management cannot handle the recovery and PlatformHealth Management will take over by firing the watchdog.

Request a governed re-review of this record. The record is not changed immediately.

Record
AUTOSAR/AP/record/SWS_PHM_01142
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_PHM_01142@rel:R25-11#9db68528
Content hash
9db68528
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_PlatformHealthManagement.pdf#nameddest=SWS_PHM_01142
Status: valid/unmigrated Version: rel:R25-11#d7b7a988 Versionshistorie & Revisions (1 transition, 8 revision)
Current State
valid/unmigrated
Reason
mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record
Campaign
2026-08-13-status-backfill
Active Version
AUTOSAR/AP/record/SWS_PHM_01142@rel:R25-11#d7b7a988
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#9d70b1c72026-09-30
  • R19-11rel:R19-11#74f0a8f02026-10-14
  • R20-11rel:R20-11#0cc3316c2026-10-14
  • R21-11rel:R21-11#0cc3316c2026-10-14
  • R22-11rel:R22-11#badb86d42026-10-14
  • R23-11rel:R23-11#89d68dcf2026-10-14
  • R24-11rel:R24-11#f8c2bd5d2026-10-14
  • R25-11rel:R25-11#d7b7a9882026-10-14 active
DateActorTransitionReason / RationaleCampaign
2026-08-13toolnone → valid/unmigratedmechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record2026-08-13-status-backfill

fonction StopOffer [SWS_PHM_01144] Upstream: RS_HM_09159, RS_AP_00159

void StopOffer () noexcept;

Disables invocations of RecoveryHandler.

GÉNÉRÉ PAR IA non vérifié Modèle : gemini-3.8-flash-medium · Effort : medium · Température : non réglable · Prompt : 8cdc07a00e3f Provenance Questions ouvertes (1)
traduit du guide allemandgemini-3.8-flash-low · 2026-10-13 · Original allemand

La méthode StopOffer de la classe ara::phm::RecoveryAction sert à désactiver l'exécution du RecoveryHandler associé [SWS_PHM_01144]. Elle est déclarée dans l'en-tête ara/phm/recovery_action.h [SWS_PHM_01144].

Utilisation et sémantique

La fonction possède la signature void StopOffer() noexcept;, ne prend aucun paramètre et ne renvoie aucune valeur de retour [SWS_PHM_01144]. Par cet appel, l'application signale au Platform Health Management (PHM) qu'aucun autre appel du gestionnaire ne doit plus avoir lieu [SWS_PHM_01144]. L'appel s'effectue de manière synchrone ; les instances de gestionnaire en cours d'exécution devraient être terminées avant ou lors de la désactivation (interprétation). Question Q-a333b1e2f0634ed1 (ouverte)

Gestion des erreurs et concurrence

  • Sécurité vis-à-vis des exceptions : l'opération est déclarée comme noexcept et est considérée comme totalement sûre vis-à-vis des exceptions ; il n'existe aucun code d'erreur ni aucune exception [SWS_PHM_01144].
  • Sécurité des threads : la méthode est explicitement spécifiée comme not thread-safe [SWS_PHM_01144]. Un appel concurrent sur la même instance de RecoveryAction nécessite donc une synchronisation externe par l'appelant.

Ce texte a été généré par une IA et s'appuie sur la spécification AUTOSAR Adaptive R25-11.

Header-Datei#include "ara/phm/recovery_action.h"
Scopeclass ara::phm::RecoveryAction
Exception-Sicherheitexception safe
Thread-Sicherheitnot thread-safe

Rückgabewert

TypBeschreibung
None

Request a governed re-review of this record. The record is not changed immediately.

Record
AUTOSAR/AP/record/SWS_PHM_01144
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_PHM_01144@rel:R25-11#a28a8098
Content hash
a28a8098
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_PlatformHealthManagement.pdf#nameddest=SWS_PHM_01144
Status: valid/unmigrated Version: rel:R25-11#0a3b9401 Versionshistorie & Revisions (1 transition, 8 revision)
Current State
valid/unmigrated
Reason
mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record
Campaign
2026-08-13-status-backfill
Active Version
AUTOSAR/AP/record/SWS_PHM_01144@rel:R25-11#0a3b9401
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#e69e06162026-09-30
  • R19-11rel:R19-11#122a6efb2026-10-14
  • R20-11rel:R20-11#485b84892026-10-14
  • R21-11rel:R21-11#adcb24f02026-10-14
  • R22-11rel:R22-11#55be05992026-10-14
  • R23-11rel:R23-11#b64d35982026-10-14
  • R24-11rel:R24-11#0a3b94012026-10-14
  • R25-11rel:R25-11#0a3b94012026-10-14 active
DateActorTransitionReason / RationaleCampaign
2026-08-13toolnone → valid/unmigratedmechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record2026-08-13-status-backfill

fonction operator= [SWS_PHM_01151] Upstream: RS_HM_09159, RS_AP_00159

RecoveryAction & operator= (RecoveryAction &&ra)=delete;

The move assignment operator for the RecoveryAction shall not be used. Rationale: Using the move assignment after a RecoveryAction instance has been offered may result in premature invocation of RecoveryHandler before the derived class is fully constructed. This can lead to undefined behavior or unhandled exceptions, compromising system stability and safety.

Header-Datei#include "ara/phm/recovery_action.h"
Scopeclass ara::phm::RecoveryAction

Request a governed re-review of this record. The record is not changed immediately.

Record
AUTOSAR/AP/record/SWS_PHM_01151
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_PHM_01151@rel:R25-11#736a4c66
Content hash
736a4c66
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_PlatformHealthManagement.pdf#nameddest=SWS_PHM_01151
Status: valid/unmigrated Version: rel:R25-11#4359eed2 Versionshistorie & Revisions (1 transition, 7 revision)
Current State
valid/unmigrated
Reason
mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record
Campaign
2026-08-13-status-backfill
Active Version
AUTOSAR/AP/record/SWS_PHM_01151@rel:R25-11#4359eed2
Point-in-Time History:
Recorded Revisions (7):
  • R25-11rel:R25-11#472762232026-09-30
  • R20-11rel:R20-11#41ba0c072026-10-14
  • R21-11rel:R21-11#41ba0c072026-10-14
  • R22-11rel:R22-11#a0be95c32026-10-14
  • R23-11rel:R23-11#2eed5b982026-10-14
  • R24-11rel:R24-11#05a1b01f2026-10-14
  • R25-11rel:R25-11#4359eed22026-10-14 active
DateActorTransitionReason / RationaleCampaign
2026-08-13toolnone → valid/unmigratedmechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record2026-08-13-status-backfill

fonction operator= [SWS_PHM_01152] Upstream: RS_HM_09159

RecoveryAction & operator= (const RecoveryAction &)=delete;

The copy assignment operator for RecoveryAction shall not be used.

Header-Datei#include "ara/phm/recovery_action.h"
Scopeclass ara::phm::RecoveryAction

Request a governed re-review of this record. The record is not changed immediately.

Record
AUTOSAR/AP/record/SWS_PHM_01152
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_PHM_01152@rel:R25-11#aed4708f
Content hash
aed4708f
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_PlatformHealthManagement.pdf#nameddest=SWS_PHM_01152
Status: valid/unmigrated Version: rel:R25-11#ff4c96ac Versionshistorie & Revisions (1 transition, 7 revision)
Current State
valid/unmigrated
Reason
mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record
Campaign
2026-08-13-status-backfill
Active Version
AUTOSAR/AP/record/SWS_PHM_01152@rel:R25-11#ff4c96ac
Point-in-Time History:
Recorded Revisions (7):
  • R25-11rel:R25-11#5c298d6f2026-09-30
  • R20-11rel:R20-11#32919afc2026-10-14
  • R21-11rel:R21-11#32919afc2026-10-14
  • R22-11rel:R22-11#9157a7c42026-10-14
  • R23-11rel:R23-11#f01e06fc2026-10-14
  • R24-11rel:R24-11#ff4c96ac2026-10-14
  • R25-11rel:R25-11#ff4c96ac2026-10-14 active
DateActorTransitionReason / RationaleCampaign
2026-08-13toolnone → valid/unmigratedmechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record2026-08-13-status-backfill

fonction ~RecoveryAction [SWS_PHM_01145] Upstream: RS_HM_09159, RS_AP_00134

virtual ~RecoveryAction () noexcept;

Destructor for RecoveryAction.

Header-Datei#include "ara/phm/recovery_action.h"
Scopeclass ara::phm::RecoveryAction
Exception-Sicherheitexception safe
Thread-Sicherheitnot thread-safe

Request a governed re-review of this record. The record is not changed immediately.

Record
AUTOSAR/AP/record/SWS_PHM_01145
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_PHM_01145@rel:R25-11#2d7d94a9
Content hash
2d7d94a9
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_PlatformHealthManagement.pdf#nameddest=SWS_PHM_01145
Status: valid/unmigrated Version: rel:R25-11#5718b75e Versionshistorie & Revisions (1 transition, 7 revision)
Current State
valid/unmigrated
Reason
mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record
Campaign
2026-08-13-status-backfill
Active Version
AUTOSAR/AP/record/SWS_PHM_01145@rel:R25-11#5718b75e
Point-in-Time History:
Recorded Revisions (7):
  • R25-11rel:R25-11#bddb59f42026-09-30
  • R20-11rel:R20-11#a25806312026-10-14
  • R21-11rel:R21-11#a25806312026-10-14
  • R22-11rel:R22-11#f9931f022026-10-14
  • R23-11rel:R23-11#d1de17222026-10-14
  • R24-11rel:R24-11#f734134e2026-10-14
  • R25-11rel:R25-11#5718b75e2026-10-14 active
DateActorTransitionReason / RationaleCampaign
2026-08-13toolnone → valid/unmigratedmechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record2026-08-13-status-backfill