DEENESPTFRRUARHIKOZHNL

класс apext::tsync::TsyncFvmException

[SWS_TS_14203] Upstream: RS_TS_20072 текст ещё не импортирован

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

Руководство пользователяСОЗДАНО ИИ

Служит Freshness Value Manager для инкапсуляции и генерации ошибочных состояний с кодом ошибки.
СОЗДАНО ИИ не проверено Модель: gemini-3.8-flash-medium · Усилие: medium · Температура: не регулируется · Промпт: abba6e58d551 Происхождение Открытые вопросы (2)
переведено с немецкого руководстваgemini-3.8-flash-low · 2026-10-13 · Немецкий оригинал

Служит Freshness Value Manager для инкапсуляции и генерации ошибочных состояний с кодом ошибки.

Класс исключений apext::tsync::TsyncFvmException служит Freshness Value Manager в модуле tsync для сообщения об ошибочных состояниях при обработке значений свежести. При обнаружении ошибки исключение явно инстанцируется с передачей специфического ara::core::ErrorCode и выбрасывается в потоке управления [SWS_TS_14204]. В качестве важнейших граничных условий конструктор объявлен как noexcept, а класс спроектирован полностью потокобезопасным и безопасным относительно исключений, чтобы обеспечить надежную передачу ошибок в параллельных системах [SWS_TS_14204].

Контекст

Класс apext::tsync::TsyncFvmException является специализированным классом исключений в модуле tsync платформы AUTOSAR Adaptive Platform. Согласно спецификации модуля, он служит для инкапсуляции и передачи ошибочных состояний, инициированных Freshness Value Manager. Класс определен как прямой подкласс ara::core::Exception и тем самым обеспечивает стандартизированную обработку исключений C++ для ошибок в контексте управления значениями свежести.

К основным партнерам по взаимодействию относятся Freshness Value Manager как инициирующая выброс инстанция, а также использующие программные компоненты и службы синхронизации, запрашивающие проверки свежести для защищенных коммуникационных связей. Если при верификации или вычислении значения свежести возникает исключительное условие, Freshness Value Manager инстанцирует этот объект для уведомления вызывающей стороны. Объявление и определение интерфейса осуществляются через заголовочный файл apext/tsync/fvm_error_domain.h [SWS_TS_14204].

Жизненный цикл

Жизненный цикл объекта типа apext::tsync::TsyncFvmException привязан к жизненному циклу обычных исключений C++. Создание осуществляется через явный конструктор TsyncFvmException, принимающий код ошибки типа ara::core::ErrorCode [SWS_TS_14204]. Этот конструктор объявлен со спецификацией noexcept, благодаря чему гарантируется, что создание самого объекта безопасно относительно исключений и ни при каких обстоятельствах не вызывает вторичных исключений [SWS_TS_14204].

Класс явно специфицирован как безопасный относительно исключений (exception safe) и потокобезопасный (thread-safe) [SWS_TS_14204]. Это позволяет безопасно создавать и передавать экземпляры даже в сложных многопоточных средах выполнения без риска возникновения гонок данных.

Интерпретация: с точки зрения владения исключение обычно выбрасывается по значению и перехватывается в стеке вызовов по ссылке на константный объект (const apext::tsync::TsyncFvmException&). Вопрос Q-6e8c4ad080550a52 (открытый) После конструирования объект не претерпевает дальнейших изменений состояния; его уничтожение происходит автоматически при выходе из обрабатывающего блока catch.

Путь использования

Стандартный путь использования протекает в рамках проводимой Freshness Value Manager валидации или обновления значений свежести. Если менеджер обнаруживает нарушение целостности свежести или внутреннюю ошибку обработки, он инициирует обработку ошибки:

  1. Идентификация ошибки: Freshness Value Manager определяет ошибочное состояние и создает соответствующий объект ara::core::ErrorCode.
  2. Инстанцирование: объект исключения инициализируется через конструктор с передачей кода ошибки [SWS_TS_14204].
  3. Генерация исключения: исключение выбрасывается в контекст вызова с помощью throw.
  4. Анализ: вызывающее приложение или уровень перехватывает исключение и обращается к встроенному коду ошибки для принятия адекватных мер по устранению ошибки или деградации.
Последовательность обработки исключений с apext::tsync::TsyncFvmExceptionПриложениеFreshness Value ManagerTsyncFvmExceptionЗапросить проверку свежестиОбнаружено недопустимое значение свежестиara::core::ErrorCode instanziierenTsyncFvmException(errorCode)throw TsyncFvmExceptioncatch (const TsyncFvmException&)Fehlercode auswerten

Диаграмма последовательности: типичный процесс обработки ошибки с использованием apext::tsync::TsyncFvmException от обнаружения в Freshness Value Manager до перехвата в вызывающем коде. Источники: [SWS_TS_14204]

Сценарии ошибок

Поскольку apext::tsync::TsyncFvmException сам спроектирован как механизм сигнализации об ошибках, функциональные сценарии сбоев обусловлены в первую очередь некорректным обращением с исключением. Предварительным условием для создания считается передача действительного ara::core::ErrorCode в конструктор [SWS_TS_14204]. Однако поскольку конструктор определен как noexcept, создание объекта остается стабильным даже при неожиданных значениях ошибки [SWS_TS_14204].

Поскольку заголовочный файл с определением apext/tsync/fvm_error_domain.h задан заранее, инкапсулированный errorCode, вероятно, предпочтительно относится к специализированному домену ошибок Freshness Value Manager [SWS_TS_14204]. Вопрос Q-91a4f2d66128bb91 (открытый) Критический сценарий сбоя возникает, если сгенерированное исключение на системном уровне не обрабатывается ни одним блоком catch; согласно семантике стандарта C++, это неизбежно приводит к вызову std::terminate и тем самым к аварийному завершению процесса. Однако благодаря гарантированной потокобезопасности согласно [SWS_TS_14204] ошибки, вызванные одновременным доступом из параллельных потоков, исключены.

Настоящее руководство основано исключительно на спецификациях AUTOSAR релиза R25-11.

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

Конструкторы и деструктор

TsyncFvmException функция

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

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

Документация методов

функция TsyncFvmException [SWS_TS_14204] Upstream: RS_TS_20072 текст ещё не импортирован

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#224aa270
Content hash
224aa270
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