DEENESPTFRRUARHIKOZHNL

classe apext::tsync::TsyncFvmException

[SWS_TS_14203] Upstream: RS_TS_20072 texto ainda não importado

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

Defines a class for exceptions to be thrown by the Freshness Value Manager.

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

Guia do utilizadorGERADO POR IA

Serve ao Freshness Value Manager para encapsular e lançar estados de erro com um código de erro.
GERADO POR IA não revisado Modelo: gemini-3.8-flash-medium · Esforço: medium · Temperatura: não controlável · Prompt: abba6e58d551 Procedência Perguntas em aberto (2)
traduzido do guia alemãogemini-3.8-flash-low · 2026-10-13 · Original em alemão

Serve ao Freshness Value Manager para encapsular e lançar estados de erro com um código de erro.

A classe de exceção apext::tsync::TsyncFvmException serve ao Freshness Value Manager no módulo tsync para reportar estados com falha no processamento de valores de frescor. Ao detectar um erro, a exceção é explicitamente instanciada com a passagem de um ara::core::ErrorCode específico e lançada no fluxo de controle [SWS_TS_14204]. Como condições de contorno essenciais, o construtor é declarado como noexcept e a classe é projetada para ser totalmente thread-safe e segura contra exceções, a fim de garantir uma propagação robusta de erros em sistemas concorrentes [SWS_TS_14204].

Contexto

A classe apext::tsync::TsyncFvmException é uma classe de exceção especializada dentro do módulo tsync da AUTOSAR Adaptive Platform. De acordo com a especificação do módulo, ela serve para o encapsulamento e propagação de estados de erro disparados pelo Freshness Value Manager. A classe é definida como subclasse direta de ara::core::Exception e garante, assim, o tratamento padronizado de exceções C++ para erros no âmbito do gerenciamento de valores de frescor.

Entre os parceiros de interação primários estão o Freshness Value Manager como instância lançadora, bem como componentes de software de aplicação e serviços de sincronização que solicitam verificações de frescor para relações de comunicação seguras. Se ocorrer uma condição de exceção durante a verificação ou cálculo de um valor de frescor, o Freshness Value Manager instancia esse objeto para notificar o chamador. A declaração e a definição da interface ocorrem por meio do arquivo de cabeçalho apext/tsync/fvm_error_domain.h [SWS_TS_14204].

Ciclo de vida

O ciclo de vida de um objeto do tipo apext::tsync::TsyncFvmException está vinculado ao ciclo de vida de exceções C++ regulares. A criação ocorre por meio do construtor explícito TsyncFvmException, que recebe um código de erro do tipo ara::core::ErrorCode [SWS_TS_14204]. Esse construtor é declarado com a especificação noexcept, o que garante que a própria criação do objeto seja segura contra exceções e não lance exceções secundárias sob nenhuma circunstância [SWS_TS_14204].

A classe é explicitamente especificada como segura contra exceções (exception safe) e segura para threads (thread-safe) [SWS_TS_14204]. Isso permite a criação e propagação seguras de instâncias mesmo em ambientes de execução multithread complexos, sem que condições de corrida de dados possam ocorrer.

Interpretação: Em relação às relações de posse, a exceção é normalmente lançada por valor e capturada na pilha de chamadas por referência a um objeto constante (const apext::tsync::TsyncFvmException&). Pergunta Q-6e8c4ad080550a52 (aberta) Após a construção, o objeto não passa por outras mudanças de estado; sua destruição ocorre automaticamente ao sair do bloco catch de tratamento.

Caminho de utilização

O caminho de utilização regular se desenrola no âmbito de uma validação ou atualização de valores de frescor realizada pelo Freshness Value Manager. Se o gerenciador identificar uma violação da integridade do frescor ou um erro interno de processamento, ele inicia o tratamento de erros:

  1. Identificação do erro: O Freshness Value Manager detecta um estado de erro e cria um objeto ara::core::ErrorCode correspondente.
  2. Instanciação: O objeto de exceção é inicializado por meio do construtor com a passagem do código de erro [SWS_TS_14204].
  3. Disparo: A exceção é lançada no contexto chamador por meio de throw.
  4. Avaliação: A aplicação ou camada chamadora captura a exceção e acessa o código de erro embutido para iniciar medidas adequadas de correção de erros ou de degradação.
Fluxo do tratamento de exceções com apext::tsync::TsyncFvmExceptionAplicaçãoFreshness Value ManagerTsyncFvmExceptionSolicitar verificação de frescorValor de frescor inválido detectadoara::core::ErrorCode instanziierenTsyncFvmException(errorCode)throw TsyncFvmExceptioncatch (const TsyncFvmException&)Fehlercode auswerten

Diagrama de sequência: Fluxo típico de tratamento de erros com apext::tsync::TsyncFvmException desde a detecção no Freshness Value Manager até a captura no chamador. Fontes: [SWS_TS_14204]

Cenários de erro

Como apext::tsync::TsyncFvmException foi concebida propriamente como mecanismo de sinalização de erros, cenários de falhas funcionais residem principalmente no manuseio incorreto da exceção. Uma pré-condição para a criação é a passagem de um ara::core::ErrorCode válido para o construtor [SWS_TS_14204]. Como o construtor é definido como noexcept, a criação do objeto permanece estável mesmo com valores de erro inesperados [SWS_TS_14204].

Como o cabeçalho de definição apext/tsync/fvm_error_domain.h é predefinido, o errorCode encapsulado deve preferencialmente originar-se do domínio de erro especializado do Freshness Value Manager [SWS_TS_14204]. Pergunta Q-91a4f2d66128bb91 (aberta) Um cenário de erro grave surge quando a exceção lançada não é tratada por nenhum bloco catch no nível do sistema; de acordo com a semântica padrão do C++, isso leva inevitavelmente à chamada de std::terminate e, com isso, ao término do processo. Devido à segurança para threads garantida segundo [SWS_TS_14204], falhas por acessos simultâneos a partir de threads paralelas estão, no entanto, descartadas.

Este guia baseia-se exclusivamente nas especificações da Release R25-11 da AUTOSAR.

Diagrama de classes UML

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

G napext__tsync__TsyncFvmException780 TsyncFvmException + TsyncFvmException() nara__core__Exception792 Exception napext__tsync__TsyncFvmException780->nara__core__Exception792 nstd__exception10 std::exception nara__core__Exception792->nstd__exception10

Construtores e destrutor

Constructs a new apext::tsync::TsyncFvmException object containing an error code.

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

Documentação dos métodos

função TsyncFvmException [SWS_TS_14204] Upstream: RS_TS_20072 texto ainda não importado

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

Constructs a new apext::tsync::TsyncFvmException object containing an error code.

Header-Datei#include "apext/tsync/fvm_error_domain.h"
Scopeclass apext::tsync::TsyncFvmException
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_14204
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_TS_14204@rel:R25-11#f0ab76ed
Content hash
f0ab76ed
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_TimeSynchronization.pdf#nameddest=SWS_TS_14204
Status: valid/unmigrated Version: rel:R25-11#40142208 Versionshistorie & Revisions (1 transition, 3 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_14204@rel:R25-11#40142208
Point-in-Time History:
Recorded Revisions (3):
  • R25-11rel:R25-11#10c9dc5e2026-09-30
  • R24-11rel:R24-11#77c0f00a2026-10-14
  • R25-11rel:R25-11#401422082026-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