시간 기반 검증을 위해 새로 사용 가능한 측정 데이터 블록에 대해 컨슈머 애플리케이션에 알립니다.
AI 생성미검증모델: gemini-3.8-flash-medium · 노력: medium · 온도: 제어 불가 · 프롬프트: c02e36846f4f출처열린 질문 (3)
독일어 가이드에서 번역됨gemini-3.8-flash-low · 2026-10-13 · 독일어 원문
시간 기반 검증을 위해 새로 사용 가능한 측정 데이터 블록에 대해 컨슈머 애플리케이션에 알립니다.
인터페이스 ara::tsync::ConsumerTimeBaseValidationNotification은(는) 시간 기반의 새로 사용 가능한 측정 데이터 블록에 대해 컨슈머 애플리케이션에 알립니다. 콜백 메서드 SetSlaveTimingData[SWS_TS_00420] 및 SetPdelayInitiatorData[SWS_TS_00422]을(를) 통해 시스템은 Time Slave 및 pDelay 개시자를 위한 상세한 타이밍 및 검증 데이터를 전달합니다. 애플리케이션 개발자는 이 클래스로부터 파생하여 데이터 처리를 구현해야 하며, 모든 메서드가 noexcept 및 예외 안전으로 명시되어 있으므로 예외가 발생하지 않도록 해야 합니다. 또한 non_threadsafe(으)로의 분류는 동시 접근 시 애플리케이션 측 동기화를 요구합니다.
컨텍스트
클래스 ara::tsync::ConsumerTimeBaseValidationNotification은(는) AUTOSAR Adaptive Platform의 tsync 모듈에 있는 콜백 인터페이스를 나타냅니다. 그 목적은 모니터링되는 시간 기반에 대해 새로 기록된 데이터 블록이 사용 가능해지자마자 컨슈머 애플리케이션에 이를 알리는 데 있습니다.
이 상호작용에는 주로 세 가지 구성요소가 참여합니다:
tsync 모듈의 시간 기반: 통신 네트워크에서 시간 및 동기화 측정값을 지속적으로 획득합니다.
ConsumerTimeBaseValidationNotification 인터페이스: 메서드 SetSlaveTimingData[SWS_TS_00420] 및 SetPdelayInitiatorData[SWS_TS_00422]을 통해 기록된 측정 데이터 블록에 대한 전달 지점을 정의합니다.
컨슈머 애플리케이션: 콜백 메서드를 구현하고, 제공된 측정값을 수신하며, 시간 기준에 대한 기술적 유효성 검증을 수행합니다.
이러한 구조를 통해 애플리케이션별 유효성 검증 로직이 시간 데이터의 플랫폼 내부 기록과 깔끔하게 분리됩니다.
수명 주기
순수 가상 메서드를 가진 추상 인터페이스 클래스이므로 ara::tsync::ConsumerTimeBaseValidationNotification을(를) 직접 인스턴스화할 수 없습니다. 컨슈머 애플리케이션은 구체 클래스를 파생시키고 필요한 메서드를 구현합니다.
생성 및 소유권은 전적으로 컨슈머 애플리케이션의 책임입니다. 애플리케이션은 초기화 단계에서 콜백 객체를 생성하고 이를 tsync 서비스의 해당 시간 기준과 연결할 것으로 추정됩니다. 질문 Q-a423ce4cbd4eeaaa (열림)
소멸을 위해 클래스는 가상 소멸자 virtual ~ConsumerTimeBaseValidationNotification() noexcept = default;[SWS_TS_01300]을(를) 제공합니다. 가상 소멸자로 선언함으로써 파생 클래스의 인스턴스를 기본 클래스 포인터를 통해 타입 안전하고 리소스 누수 없이 해제할 수 있도록 보장합니다.
동시성과 관련하여 알림 메서드 SetSlaveTimingData[SWS_TS_00420] 및 SetPdelayInitiatorData[SWS_TS_00422]은(는) non_threadsafe(으)로 명시되어 있습니다. 플랫폼 서비스에 의한 호출이 백그라운드 스레드 컨텍스트에서 수행될 수 있으므로, 공유 애플리케이션 리소스에 대한 접근을 보호할 책임은 애플리케이션 측 구현에 있습니다. 질문 Q-1b857df043504eec (열림)
사용 경로
유효성 검증 알림을 사용하는 전형적인 흐름은 다음 단계로 구성됩니다:
구현: 컨슈머 애플리케이션은 ara::tsync::ConsumerTimeBaseValidationNotification에서 파생된 클래스를 구현합니다.
Time Slave 측정 데이터 수신: 시간 기준의 Time Slave에 대해 새로운 측정 데이터 블록이 기록되는 즉시, 시간 서비스는 SetSlaveTimingData 메서드를 호출하고 [SWS_TS_00420] 타입 TimeSlaveMeasurementType의 매개변수 measurementData을(를) 통해 상세 유효성 검증 데이터를 전달합니다.
pDelay Initiator 측정 데이터 수신: pDelay Initiator에 대해 새로운 측정 데이터가 사용 가능해지면 PdelayInitiatorMeasurementType의 상세 타이밍 데이터와 함께 SetPdelayInitiatorData[SWS_TS_00422] 호출이 수행됩니다.
처리: 컨슈머 애플리케이션은 동기화 오류 또는 런타임 편차를 감지하기 위해 전달된 데이터 블록을 평가합니다.
객체 해제: 모니터링이 종료되면 인스턴스는 가상 소멸자 [SWS_TS_01300]을(를) 통해 해제됩니다.
예외 안전성: 모든 멤버 함수(SetSlaveTimingData[SWS_TS_00420], SetPdelayInitiatorData[SWS_TS_00422] 및 소멸자 [SWS_TS_01300])는 noexcept(으)로 선언되어 있으며 예외 안전(exception safe)(으)로 명시되어 있습니다. 컨슈머 애플리케이션의 재정의 메서드는 예외를 외부로 전파해서는 안 되며, 전파 시 즉각적인 프로그램 종료로 이어집니다.
피드백 채널의 부재: 콜백 메서드의 반환 타입이 void이므로, 애플리케이션 로직 내부의 처리 오류를 tsync 모듈로 다시 보고할 수 없습니다. 애플리케이션은 발생할 수 있는 모든 오류 상태를 자체적으로 내부에서 처리하고 기록해야 합니다.
동시성 위험: 속성 non_threadsafe([SWS_TS_00420], [SWS_TS_00422])으로 인해 애플리케이션 측의 락(lock) 없이 여러 데이터 블록이 병렬로 처리되는 것을 방지해야 합니다. 해석: 또한 이미 해제된 메모리에 대한 치명적인 접근을 방지하기 위해 시간 기준에 등록되어 있는 전체 기간 동안 콜백 객체가 유효한 상태를 유지해야 합니다. 질문 Q-934e451f6a0099c1 (열림)
이 가이드는 tsync 모듈에 대한 AUTOSAR Adaptive R25-11 사양을 기반으로 합니다. 명시적인 사양 근거가 없는 설명은 기술적 해석을 나타냅니다.
gemini-3.8-flash-low· 2026-10-13 · 독일어 원문