관련 오류 코드가 포함된 예외 형태로 Time Synchronization의 오류를 보고하고 캡슐화하는 역할을 합니다.
AI 생성미검증모델: gemini-3.8-flash-medium · 노력: medium · 온도: 제어 불가 · 프롬프트: 02ba32fb22cc출처열린 질문 (2)
독일어 가이드에서 번역됨gemini-3.8-flash-low · 2026-10-13 · 독일어 원문
관련 오류 코드가 포함된 예외 형태로 Time Synchronization의 오류를 보고하고 캡슐화하는 역할을 합니다.
예외 클래스 ara::tsync::TsyncException은(는) Adaptive Platform 내에서 Time Synchronization 중에 발생하는 오류를 캡슐화하고 전달하는 데 사용됩니다. 이 클래스는 ara::core::Exception에서 파생되며 생성 시 오류 원인을 설명하는 특정 ara::core::ErrorCode을(를) 필수로 수신합니다 [SWS_TS_00903]. 생성자는 noexcept(으)로 선언되어 있어 예외의 인스턴스화가 예외 안전 및 스레드 안전하게 실행됨이 보장됩니다 [SWS_TS_00903]. 애플리케이션은 포함된 오류 코드를 목적에 맞게 평가하기 위해 오류 처리 경로에서 이 예외를 포착할 수 있습니다. 질문 (열림)
컨텍스트
클래스 ara::tsync::TsyncException은(는) AUTOSAR Adaptive Platform 내의 Time Synchronization(tsync) 기능 영역을 위한 전용 예외 클래스입니다. 사양에 따라 이 클래스는 헤더 ara/tsync/tsync_error_domain.h에 선언되며, Time Synchronization에 의해 발생하는 예외를 매핑하기 위한 중앙 형식 역할을 합니다 [SWS_TS_00903]. 기본 클래스 ara::core::Exception로부터의 공개 상속을 통해 플랫폼 전반의 오류 처리 아키텍처에 원활하게 통합됩니다.
시스템 아키텍처에서 ara::tsync::TsyncException은(는) Time Synchronization 서비스의 구현 컴포넌트와 애플리케이션 모듈 간의 정보 전달자 역할을 수행합니다. 동기화 과정에서 심각한 오류가 발생하면 격리되어 폐기되지 않고 표준화된 예외 형태로 보고됩니다. 이 클래스는 오류의 구체적인 원인을 인코딩하고 캡슐화하는 ara::core::ErrorCode과(와) 긴밀하게 상호작용합니다 [SWS_TS_00903].
컨텍스트 다이어그램: Time Synchronization, ara::core::ErrorCode 및 ara::core::Exception과의 상호작용에서의 ara::tsync::TsyncException 분류. 출처: [SWS_TS_00903]
수명 주기
ara::tsync::TsyncException 인스턴스의 수명 주기는 명시적 인스턴스화와 함께 시작됩니다. 사양에는 이를 위해 ara::core::ErrorCode 형식의 오류 코드를 정확히 하나 받는 생성자가 정의되어 있습니다: explicit TsyncException(ara::core::ErrorCode errorCode) noexcept[SWS_TS_00903]. explicit(으)로의 선언을 통해 오류 코드가 암시적이고 의도치 않게 예외 객체로 변환되는 것을 방지합니다.
객체 생성에 대해 AUTOSAR는 엄격한 보장을 명시합니다. 즉, 생성은 명시적으로 예외 안전(exception safe) 및 스레드 안전(thread-safe)으로 규정되어 있습니다 [SWS_TS_00903]. 키워드 noexcept은(는) 어떤 상황에서도 생성자 자체가 추가 예외를 발생시키지 않음을 보장합니다 [SWS_TS_00903]. 예외 생성은 일반적으로 오류 처리 경로에서 발생하며 여기서의 실패는 제어되지 않는 시스템 상태로 이어질 수 있으므로 이는 필수적입니다.
생성 후 객체는 일반적인 C++ 예외 시맨틱을 따릅니다. 즉, 해당 핸들러에 의해 포착될 때까지 호출 스택을 따라 전달됩니다. catch 블록을 벗어나면 예외 인스턴스의 수명이 종료되고 리소스는 결정론적으로 해제됩니다.
사용 경로
ara::tsync::TsyncException 사용 시 일반적인 시퀀스는 오류 식별, 객체 생성 및 애플리케이션 측 포착으로 나뉩니다:
오류 식별: Time Synchronization이 런타임에 편차나 오류 상태를 감지하고 적절한 ara::core::ErrorCode을(를) 생성합니다 [SWS_TS_00903].
예외 생성 및 발생: 생성자를 사용하여 확인된 오류 코드로 ara::tsync::TsyncException 객체를 인스턴스화하고 발생시킵니다 [SWS_TS_00903].
오류 포착: 호출 컴포넌트가 구조화된 예외 처리 블록에서 예외를 포착합니다.
개발자는 애플리케이션에서 예외를 특정하여 const ara::tsync::TsyncException&(으)로 처리하거나 기본 클래스 const ara::core::Exception&을(를) 통해 다형적으로 포착할 수 있습니다 [SWS_TS_00903]. 질문 Q-0c8129359ef114e8 (열림) 형식 정의에 접근하려면 헤더 ara/tsync/tsync_error_domain.h의 포함이 필요합니다 [SWS_TS_00903].
오류 시나리오
예외 클래스로서 ara::tsync::TsyncException은(는) 오류 시나리오를 명시적으로 표현하는 역할을 합니다. 여기서 핵심 구성 요소는 캡슐화된 ara::core::ErrorCode이며, 이는 오류 도메인 내의 구체적인 오류 원인에 대한 상세한 정보를 제공합니다 [SWS_TS_00903].
중요한 특징은 매개변수가 없는 기본 생성자가 없다는 점입니다. 이를 통해 연관된 오류 코드 없는 예외 인스턴스가 존재할 수 없도록 보장합니다 [SWS_TS_00903]. 또한 생성자의 noexcept 보장은 오류의 캡슐화 및 시그널링이 2차 예외 오류에 의해 덮어씌워지지 않도록 보장합니다 [SWS_TS_00903].
이 가이드는 AUTOSAR 사양 R25-11을 기반으로 AI에 의해 생성되었습니다.
UML 클래스 다이어그램
Hohle Dreieckspfeile = Vererbung (zeigt zur Basisklasse); Klicken öffnet die jeweilige Klassenseite.
gemini-3.8-flash-low· 2026-10-13 · 독일어 원문