DEENESPTFRRUARHIKOZHNL

classe ara::tsync::TsyncException

[SWS_TS_00902] Upstream: RS_AP_00130, RS_AP_00122, RS_AP_00127, RS_AP_00154, RS_AP_00150

class TsyncException :             public ara::core::Exception {...};

Defines a class for exceptions to be thrown by the Time Synchronization.

Header-Datei#include "ara/tsync/tsync_error_domain.h"
Forwarding-Header#include "ara/tsync/tsync_fwd.h"
Scopenamespace ara::tsync
Basisklasse(n)ara::core::Exception

Guide utilisateurGÉNÉRÉ PAR IA

Sert à signaler et à encapsuler les erreurs de la synchronisation temporelle sous la forme d'une exception avec son code d'erreur associé.
GÉNÉRÉ PAR IA non vérifié Modèle : gemini-3.8-flash-medium · Effort : medium · Température : non réglable · Prompt : 02ba32fb22cc Provenance Questions ouvertes (2)
traduit du guide allemandgemini-3.8-flash-low · 2026-10-13 · Original allemand

Sert à signaler et à encapsuler les erreurs de la synchronisation temporelle sous la forme d'une exception avec son code d'erreur associé.

La classe d'exception ara::tsync::TsyncException sert à encapsuler et à relayer les erreurs survenant pendant la synchronisation temporelle au sein de l'Adaptive Platform. Elle dérive de ara::core::Exception et reçoit obligatoirement lors de sa construction un ara::core::ErrorCode spécifique décrivant la cause de l'erreur [SWS_TS_00903]. Le constructeur est déclaré comme noexcept, ce qui garantit que l'instanciation de l'exception s'exécute de manière sûre vis-à-vis des exceptions et thread-safe [SWS_TS_00903]. Les applications devraient intercepter l'exception dans leurs chemins de traitement des erreurs afin d'évaluer de manière ciblée le code d'erreur contenu. Question (ouverte)

Contexte

La classe ara::tsync::TsyncException représente la classe d'exception dédiée au domaine fonctionnel Time Synchronization (tsync) au sein de l'AUTOSAR Adaptive Platform. Selon la spécification, elle est déclarée dans l'en-tête ara/tsync/tsync_error_domain.h et sert de type central pour représenter les exceptions déclenchées par la synchronisation temporelle [SWS_TS_00903]. Grâce à sa dérivation publique depuis la classe de base ara::core::Exception, elle s'intègre harmonieusement dans l'architecture de traitement des erreurs à l'échelle de la plateforme.

Dans l'architecture système, ara::tsync::TsyncException assume le rôle de vecteur d'informations entre les composants d'implémentation du service de synchronisation temporelle et les modules applicatifs. Si une erreur grave survient dans le cadre de la synchronisation, celle-ci n'est pas rejetée de manière isolée, mais signalée sous la forme d'une exception normalisée. La classe coopère étroitement avec ara::core::ErrorCode, qui code et encapsule la cause concrète de l'erreur [SWS_TS_00903].

tsync Time Synchronization (ara::tsync) texc ara::tsync::TsyncException tsync->texc wirft errcode ara::core::ErrorCode errcode->texc Parameter errorCode base ara::core::Exception base->texc Basisklasse

Diagramme de contexte : Positionnement de ara::tsync::TsyncException en interaction avec Time Synchronization, ara::core::ErrorCode et ara::core::Exception. Sources : [SWS_TS_00903]

Cycle de vie

Le cycle de vie d'une instance de ara::tsync::TsyncException débute par son instanciation explicite. La spécification prévoit à cet effet un constructeur acceptant exactement un code d'erreur de type ara::core::ErrorCode : explicit TsyncException(ara::core::ErrorCode errorCode) noexcept [SWS_TS_00903]. La déclaration sous forme de explicit empêche que des codes d'erreur soient implicitement et involontairement convertis en objets exception.

Pour la création d'objets, AUTOSAR formule des garanties strictes : la construction est expressément spécifiée comme sûre vis-à-vis des exceptions (exception safe) et thread-safe (thread-safe) [SWS_TS_00903]. Le mot-clé noexcept garantit que le constructeur ne lève lui-même sous aucune condition d'autre exception [SWS_TS_00903]. Ceci est essentiel, car la création d'exceptions a typiquement lieu dans le chemin de traitement des erreurs et un échec à cet endroit conduirait à un état système non contrôlé.

Après sa création, l'objet est soumis à la sémantique usuelle des exceptions C++ : il est propagé le long de la pile d'appels jusqu'à être intercepté par un gestionnaire approprié. La sortie du bloc catch marque la fin de la durée de vie de l'instance d'exception et les ressources sont libérées de manière déterministe.

Parcours d'utilisation

Le déroulement typique lors de l'utilisation de ara::tsync::TsyncException se divise en identification de l'erreur, création de l'objet et interception côté application :

  • Identification de l'erreur : la Time Synchronization détecte un écart ou un état d'erreur au moment de l'exécution et génère un ara::core::ErrorCode approprié [SWS_TS_00903].
  • Création et levée de l'exception : au moyen du constructeur, un objet ara::tsync::TsyncException est instancié avec le code d'erreur déterminé puis déclenché [SWS_TS_00903].
  • Interception de l'erreur : le composant appelant intercepte l'exception au sein d'un bloc structuré de traitement des exceptions.

Dans leurs applications, les développeurs devraient pouvoir traiter l'exception au choix de façon spécifique en tant que const ara::tsync::TsyncException& ou l'intercepter de manière polymorphe via la classe de base const ara::core::Exception& [SWS_TS_00903]. Question Q-0c8129359ef114e8 (ouverte) L'inclusion de l'en-tête ara/tsync/tsync_error_domain.h est requise pour accéder à la définition du type [SWS_TS_00903].

Scénarios d'erreur

En tant que classe d'exception, ara::tsync::TsyncException sert à la représentation explicite de scénarios d'erreur. L'élément central est ici le ara::core::ErrorCode encapsulé, qui fournit des informations détaillées sur la raison spécifique de l'erreur au sein du domaine d'erreur [SWS_TS_00903].

Une caractéristique essentielle réside dans l'absence de constructeur par défaut sans paramètre. Cela garantit qu'aucune instance d'exception ne peut exister sans code d'erreur associé [SWS_TS_00903]. La garantie noexcept du constructeur assure en outre que l'encapsulation et la signalisation de l'erreur ne sont pas parasitées par des exceptions secondaires [SWS_TS_00903].

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

Diagramme de classes UML

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

G nara__tsync__TsyncException184 TsyncException + TsyncException() nara__core__Exception792 Exception nara__tsync__TsyncException184->nara__core__Exception792 nstd__exception10 std::exception nara__core__Exception792->nstd__exception10

Constructeurs et destructeur

Constructs a new TsyncException object containing an error code.

explicit TsyncException (ara::core::ErrorCode errorCode) noexcept;

Documentation des méthodes

fonction TsyncException [SWS_TS_00903] Upstream: RS_AP_00120, RS_AP_00121, RS_AP_00130

explicit TsyncException (ara::core::ErrorCode errorCode) noexcept;

Constructs a new TsyncException object containing an error code.

Header-Datei#include "ara/tsync/tsync_error_domain.h"
Scopeclass ara::tsync::TsyncException
Exception-Sicherheitexception safe
Thread-Sicherheitthread-safe

Parameter (in)

ParameterBeschreibung
errorCodeThe error code.

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

Record
AUTOSAR/AP/record/SWS_TS_00903
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_TS_00903@rel:R25-11#0deb8e79
Content hash
0deb8e79
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_TimeSynchronization.pdf#nameddest=SWS_TS_00903
Status: valid/unmigrated Version: rel:R25-11#7c8b669e Versionshistorie & Revisions (1 transition, 4 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_TS_00903@rel:R25-11#7c8b669e
Point-in-Time History:
Recorded Revisions (4):
  • R25-11rel:R25-11#f5877bab2026-09-30
  • R23-11rel:R23-11#9b018b632026-10-14
  • R24-11rel:R24-11#7c8b669e2026-10-14
  • R25-11rel:R25-11#7c8b669e2026-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