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

Guia do utilizadorGERADO POR IA

Serve para notificar e encapsular erros da sincronização de tempo na forma de uma exceção com o código de erro associado.
GERADO POR IA não revisado Modelo: gemini-3.8-flash-medium · Esforço: medium · Temperatura: não controlável · Prompt: 02ba32fb22cc Procedência Perguntas em aberto (2)
traduzido do guia alemãogemini-3.8-flash-low · 2026-10-13 · Original em alemão

Serve para notificar e encapsular erros da sincronização de tempo na forma de uma exceção com o código de erro associado.

A classe de exceção ara::tsync::TsyncException serve para o encapsulamento e o encaminhamento de erros que ocorrem durante a sincronização de tempo dentro da Adaptive Platform. Ela deriva de ara::core::Exception e recebe obrigatoriamente em sua construção um ara::core::ErrorCode específico, que descreve a causa do erro [SWS_TS_00903]. O construtor é declarado como noexcept, garantindo que a instanciação da exceção ocorra de maneira segura contra exceções e thread-safe [SWS_TS_00903]. As aplicações provavelmente capturam a exceção em seus caminhos de tratamento de erros para avaliar seletivamente o código de erro contido. Pergunta (aberta)

Contexto

A classe ara::tsync::TsyncException representa a classe de exceção dedicada para a área funcional Time Synchronization (tsync) dentro da AUTOSAR Adaptive Platform. De acordo com a especificação, ela é declarada no cabeçalho ara/tsync/tsync_error_domain.h e serve como tipo central para mapear exceções lançadas pela sincronização de tempo [SWS_TS_00903]. Por meio da derivação pública da classe base ara::core::Exception, ela se integra perfeitamente à arquitetura de tratamento de erros de toda a plataforma.

Na arquitetura do sistema, ara::tsync::TsyncException assume o papel de portador de informações entre os componentes de implementação do serviço de sincronização de tempo e os módulos de aplicação. Se ocorrer um erro grave no âmbito da sincronização, ele não é descartado isoladamente, mas sim reportado na forma de uma exceção padronizada. A classe trabalha em estreita colaboração com ara::core::ErrorCode, que codifica e encapsula a causa concreta do erro [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

Diagrama de contexto: Enquadramento de ara::tsync::TsyncException na interação com Time Synchronization, ara::core::ErrorCode e ara::core::Exception. Fontes: [SWS_TS_00903]

Ciclo de vida

O ciclo de vida de uma instância de ara::tsync::TsyncException começa com sua instanciação explícita. A especificação prevê para isso um construtor que aceita exatamente um código de erro do tipo ara::core::ErrorCode: explicit TsyncException(ara::core::ErrorCode errorCode) noexcept [SWS_TS_00903]. A declaração como explicit impede que códigos de erro sejam convertidos de forma implícita e não intencional em objetos de exceção.

Para a criação do objeto, o AUTOSAR formula garantias estritas: a construção é expressamente especificada como segura contra exceções (exception safe) e thread-safe (thread-safe) [SWS_TS_00903]. A palavra-chave noexcept garante que o próprio construtor não lance nenhuma outra exceção sob nenhuma condição [SWS_TS_00903]. Isso é essencial, pois a criação da exceção ocorre tipicamente no caminho de tratamento de erros, e uma falha nesse ponto levaria a um estado descontrolado do sistema.

Após a criação, o objeto está sujeito à semântica usual de exceções do C++: ele é transportado ao longo da pilha de chamadas até ser capturado por um manipulador correspondente. Com a saída do bloco catch, o tempo de vida da instância de exceção termina e os recursos são liberados de maneira determinística.

Caminho de utilização

O fluxo típico no uso de ara::tsync::TsyncException divide-se em identificação do erro, criação do objeto e captura no lado da aplicação:

  • Identificação do erro: A Time Synchronization detecta em tempo de execução um desvio ou uma condição de erro e gera um ara::core::ErrorCode correspondente [SWS_TS_00903].
  • Criação e lançamento da exceção: Utilizando o construtor, um objeto ara::tsync::TsyncException é instanciado com o código de erro determinado e lançado [SWS_TS_00903].
  • Captura do erro: O componente chamador captura a exceção em um bloco estruturado de tratamento de exceções.

Os desenvolvedores provavelmente tratam a exceção em suas aplicações opcionalmente de forma específica como const ara::tsync::TsyncException& ou a capturam polimorficamente por meio da classe base const ara::core::Exception& [SWS_TS_00903]. Pergunta Q-0c8129359ef114e8 (aberta) Para acessar a definição do tipo, é necessária a inclusão do cabeçalho ara/tsync/tsync_error_domain.h [SWS_TS_00903].

Cenários de erro

Como classe de exceção, ara::tsync::TsyncException serve para a representação explícita de cenários de erro. O componente central aqui é o ara::core::ErrorCode encapsulado, que fornece informações detalhadas sobre o motivo específico do erro dentro do domínio de erro [SWS_TS_00903].

Uma característica essencial é a ausência de um construtor padrão sem parâmetros. Isso garante que nenhuma instância de exceção possa existir sem um código de erro associado [SWS_TS_00903]. A garantia noexcept do construtor assegura ainda que o encapsulamento e a sinalização do erro não sejam sobrepostos por falhas de exceção secundárias [SWS_TS_00903].

Este guia foi gerado por uma IA com base na especificação AUTOSAR R25-11.

Diagrama 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

Construtores e destrutor

Constructs a new TsyncException object containing an error code.

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

Documentação dos métodos

função 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#04ae08ce
Content hash
04ae08ce
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