DEENESPTFRRUARHIKOZHNL

类 ara::shwa::ErrorHandler

Diese Seite wurde vollständig KI-generiert auf Basis von SWS Safe Hardware Acceleration (R25-11) — kein offizieller AUTOSAR-Text und keine automatisch extrahierte API-Seite wie die übrigen Module. Als Interpretation gekennzeichnete Aussagen sind Schlussfolgerungen aus den Quellen.

[AP_SWS_SHWA_00501] 原文尚未导入 Upstream: RS_SHWA_00008

class ErrorHandler final {...};

Die Spezifikation definiert diesen Klassentyp mit der gezeigten Schnittstelle.

Header-Datei#include "ara/shwa/error_handler.h"
Scopenamespace ara::shwa

用户指南人工智能生成

用于捕获模块 shwa 中的错误并将其转发至应用程序特定的处理例程。
AI 生成 未审核 模型: gemini-3.8-flash-medium · 推理强度: medium · 温度: 不可控 · 提示词: d10c8775782f 来源 未决问题(2)
译自德文指南gemini-3.8-flash-low · 2026-10-13 · 德文原文

用于捕获模块 shwa 中的错误并将其转发至应用程序特定的处理例程。

该类用于在模块 shwa 内部集中接收和转发错误。实例只能通过静态工厂方法创建,该方法在独占指针中提供该对象 [AP_SWS_SHWA_00507]。通过错误处理方法,可以传递并处理特定的错误码 [AP_SWS_SHWA_00508]。由于错误处理流程既未设计为线程安全,也未设计为异常安全,因此调用应用程序必须从外部协调并发访问。

上下文

类 ara::shwa::ErrorHandler 在模块 shwa(Smart Hardware Actuator)中提供了一个专门的接口,用于接收和针对性地转发模块特定的错误状态。作为 AUTOSAR Adaptive Platform 的组成部分,它将实际的硬件和执行器逻辑与上级错误处理策略解耦。该类被声明为 final,从而排除了派生,并强制实施固定的使用行为。

ara::shwa::ErrorHandler 的主要交互对象包括:

  • 使用该类的应用程序或平台组件,负责管理该实例并在发生错误时触发处理方法。
  • 创建时注册的回调 std::function<void(ara::core::ErrorCode)>,负责在应用程序级别执行实际的处理响应。
  • 模块特定的错误域,由类型 ara::shwa::ShwaErrorCode 表示。

生命周期

ara::shwa::ErrorHandler 实例的生命周期在创建、可复制性和内存所有权方面受到严格限制。通过默认构造函数进行常规构造被排除在外,因为无参构造函数已被删除 [AP_SWS_SHWA_00502]。为了确保唯一标识和明确的职责,类定义禁止了任何复制和移动操作:

实例化的唯一途径是静态工厂方法 Create [AP_SWS_SHWA_00507]。该方法接收函数对象 std::function<void(ara::core::ErrorCode)>,并以 ara::core::Result<std::unique_ptr<ErrorHandler>> 的形式返回结果。通过 std::unique_ptr,对象的独占所有权被转移给调用方。因此,实例的生命周期直接与智能指针的生命周期绑定;智能指针销毁时,ErrorHandler 也会被释放。

在并发性方面,创建方法 Create 被指定为线程安全(thread-safe)和异常安全(exception safe)[AP_SWS_SHWA_00507]。然而,用于操作性错误处理的方法 HandleError 既未被指定为线程安全,也未被指定为异常安全 [AP_SWS_SHWA_00508]。因此,对同一实例的并发访问必须在应用程序级别进行协调。

使用路径

使用 ara::shwa::ErrorHandler 时的典型流程包括通过工厂进行初始化以及后续的错误处理:

  1. 回调定义:应用程序定义具有签名 void(ara::core::ErrorCode) 的处理例程。
  2. 创建:应用程序调用静态方法 Create 并传递回调函数 [AP_SWS_SHWA_00507]。检查 ara::core::Result 后,应用程序接管 std::unique_ptr<ErrorHandler>。
  3. 错误通知:如果在运行期间发生错误,将在实例上调用带有相应 ara::shwa::ShwaErrorCode 的方法 HandleError [AP_SWS_SHWA_00508]。
  4. 转发:实例处理错误事件;在此期间,推测模块特定的错误码在内部可能被转换为 ara::core::ErrorCode 并传递给已注册的回调函数(解释)。 问题 Q-4101388d317e1f5b (未决)
使用 ErrorHandler 的典型错误处理流程应用ErrorHandlerHandler-CallbackUse Case: 通过工厂实例化Create(handler)Result<std::unique_ptr<ErrorHandler>>Use Case: Operative FehlerbehandlungHandleError(errorCode)handler(coreErrorCode)返回返回

时序图:从实例化到错误处理的典型调用顺序。来源:[AP_SWS_SHWA_00507],[AP_SWS_SHWA_00508]

错误场景

使用该类时,必须注意关键的约束条件和边界情况:

  • 对象创建失败:规范未为工厂方法 Create 指定标准化的错误代码 [AP_SWS_SHWA_00507]。然而,该方法返回一个 ara::core::Result,因此任何错误情况(如内存不足)可能都会通过此结果对象进行报告(解释)。 问题 Q-85c2140acfda8244 (未决)因此,调用方必须在访问指针之前对 Result 进行校验。
  • 错误处理的前提条件:调用 HandleError 以正常的实例和有效的 ara::shwa::ShwaErrorCode 为前提条件 [AP_SWS_SHWA_00508]。由于该方法没有返回值,处理过程中的错误无法作为状态码直接报告给调用方。
  • 缺少异常安全性和线程安全性:由于 HandleError 被声明为 not thread-safe 和 not exception safe [AP_SWS_SHWA_00508],调用环境必须确保调用按顺序进行,并且错误处理内部不会传播未捕获的异常。

本类指南基于 Adaptive Platform 的 AUTOSAR 规范(Release R25-11)并自动生成。

成员图

构造函数和析构函数

1

运算符

1

详细视图

请在大纲中选择一个条目。

构造函数和析构函数

ErrorHandler 函数 3

Die Spezifikation definiert diese Deklaration mit der in der Signatur ausgewiesenen Semantik.

重载 ErrorHandler 3
ErrorHandler ()=delete; AP_SWS_SHWA_00502
ErrorHandler (ErrorHandler &&)=delete; AP_SWS_SHWA_00505
ErrorHandler (ErrorHandler const &)=delete; AP_SWS_SHWA_00503

方法

Create 函数

Erzeugt beziehungsweise liefert das in der Signatur beschriebene Objekt oder Ergebnis über den angegebenen Factory-Pfad.

static ara::core::Result< std::unique_ptr< ErrorHandler > > Create (std::function< void(ara::core::ErrorCode)> handler) noexcept;

Führt die in der Signatur definierte Fehlerdomänen- oder Fehlerbehandlungsoperation aus.

void HandleError (ara::shwa::ShwaErrorCode errorCode);

运算符

operator= 函数 2

Stellt die in der Signatur ausgewiesene Index- beziehungsweise Zuweisungsoperation bereit.

重载 = 2
ErrorHandler & operator= (const ErrorHandler &)=delete; AP_SWS_SHWA_00504
ErrorHandler & operator= (ErrorHandler &&)=delete; AP_SWS_SHWA_00506

详细信息

函数 ErrorHandler [AP_SWS_SHWA_00502] Upstream: RS_SHWA_00008

ErrorHandler ()=delete;

Die Spezifikation definiert diese Deklaration mit der in der Signatur ausgewiesenen Semantik.

Scopeclass ara::shwa::ErrorHandler

Request a governed re-review of this record. The record is not changed immediately.

Record
AUTOSAR/AP/record/AP_SWS_SHWA_00502
Status
valid/unmigrated
Version
AUTOSAR/AP/record/AP_SWS_SHWA_00502@rel:R25-11#b25ab858
Content hash
b25ab858
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_SafeHardwareAcceleration.pdf#nameddest=AP_SWS_SHWA_00502
Status: valid/unmigrated Version: rel:R25-11#7fa5897f Versionshistorie & Revisions (1 transition)
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/AP_SWS_SHWA_00502@rel:R25-11#7fa5897f
Point-in-Time History:
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

函数 ErrorHandler [AP_SWS_SHWA_00505] Upstream: RS_SHWA_00008

ErrorHandler (ErrorHandler &&)=delete;

Die Spezifikation definiert diese Deklaration mit der in der Signatur ausgewiesenen Semantik.

Scopeclass ara::shwa::ErrorHandler

Request a governed re-review of this record. The record is not changed immediately.

Record
AUTOSAR/AP/record/AP_SWS_SHWA_00505
Status
valid/unmigrated
Version
AUTOSAR/AP/record/AP_SWS_SHWA_00505@rel:R25-11#ca177753
Content hash
ca177753
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_SafeHardwareAcceleration.pdf#nameddest=AP_SWS_SHWA_00505
Status: valid/unmigrated Version: rel:R25-11#419fe952 Versionshistorie & Revisions (1 transition)
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/AP_SWS_SHWA_00505@rel:R25-11#419fe952
Point-in-Time History:
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

函数 operator= [AP_SWS_SHWA_00504] Upstream: RS_SHWA_00008

ErrorHandler & operator= (const ErrorHandler &)=delete;

Stellt die in der Signatur ausgewiesene Index- beziehungsweise Zuweisungsoperation bereit.

Scopeclass ara::shwa::ErrorHandler

Request a governed re-review of this record. The record is not changed immediately.

Record
AUTOSAR/AP/record/AP_SWS_SHWA_00504
Status
valid/unmigrated
Version
AUTOSAR/AP/record/AP_SWS_SHWA_00504@rel:R25-11#034f36ab
Content hash
034f36ab
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_SafeHardwareAcceleration.pdf#nameddest=AP_SWS_SHWA_00504
Status: valid/unmigrated Version: rel:R25-11#5a3dec6d Versionshistorie & Revisions (1 transition)
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/AP_SWS_SHWA_00504@rel:R25-11#5a3dec6d
Point-in-Time History:
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

函数 operator= [AP_SWS_SHWA_00506] Upstream: RS_SHWA_00008

ErrorHandler & operator= (ErrorHandler &&)=delete;

Stellt die in der Signatur ausgewiesene Index- beziehungsweise Zuweisungsoperation bereit.

Scopeclass ara::shwa::ErrorHandler

Request a governed re-review of this record. The record is not changed immediately.

Record
AUTOSAR/AP/record/AP_SWS_SHWA_00506
Status
valid/unmigrated
Version
AUTOSAR/AP/record/AP_SWS_SHWA_00506@rel:R25-11#d4523879
Content hash
d4523879
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_SafeHardwareAcceleration.pdf#nameddest=AP_SWS_SHWA_00506
Status: valid/unmigrated Version: rel:R25-11#e689a389 Versionshistorie & Revisions (1 transition)
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/AP_SWS_SHWA_00506@rel:R25-11#e689a389
Point-in-Time History:
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

函数 ErrorHandler [AP_SWS_SHWA_00503] Upstream: RS_SHWA_00008

ErrorHandler (ErrorHandler const &)=delete;

Die Spezifikation definiert diese Deklaration mit der in der Signatur ausgewiesenen Semantik.

Scopeclass ara::shwa::ErrorHandler

Request a governed re-review of this record. The record is not changed immediately.

Record
AUTOSAR/AP/record/AP_SWS_SHWA_00503
Status
valid/unmigrated
Version
AUTOSAR/AP/record/AP_SWS_SHWA_00503@rel:R25-11#85ca544e
Content hash
85ca544e
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_SafeHardwareAcceleration.pdf#nameddest=AP_SWS_SHWA_00503
Status: valid/unmigrated Version: rel:R25-11#2aaa7f49 Versionshistorie & Revisions (1 transition)
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/AP_SWS_SHWA_00503@rel:R25-11#2aaa7f49
Point-in-Time History:
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

函数 Create [AP_SWS_SHWA_00507] Upstream: RS_SHWA_00008, RS_SHWA_00007

static ara::core::Result< std::unique_ptr< ErrorHandler > > Create (std::function< void(ara::core::ErrorCode)> handler) noexcept;

Erzeugt beziehungsweise liefert das in der Signatur beschriebene Objekt oder Ergebnis über den angegebenen Factory-Pfad.

Scopeclass ara::shwa::ErrorHandler
Thread Safetythread-safe
Exception Safetyexception safe
ErrorsThis function does not specify any standardized errors.

Request a governed re-review of this record. The record is not changed immediately.

Record
AUTOSAR/AP/record/AP_SWS_SHWA_00507
Status
valid/unmigrated
Version
AUTOSAR/AP/record/AP_SWS_SHWA_00507@rel:R25-11#c10abb04
Content hash
c10abb04
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_SafeHardwareAcceleration.pdf#nameddest=AP_SWS_SHWA_00507
Status: valid/unmigrated Version: rel:R25-11#49774b06 Versionshistorie & Revisions (1 transition)
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/AP_SWS_SHWA_00507@rel:R25-11#49774b06
Point-in-Time History:
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

函数 HandleError [AP_SWS_SHWA_00508] Upstream: RS_SHWA_00008

void HandleError (ara::shwa::ShwaErrorCode errorCode);

Führt die in der Signatur definierte Fehlerdomänen- oder Fehlerbehandlungsoperation aus.

Scopeclass ara::shwa::ErrorHandler
Thread Safetynot thread-safe
Exception Safetynot exception safe

Request a governed re-review of this record. The record is not changed immediately.

Record
AUTOSAR/AP/record/AP_SWS_SHWA_00508
Status
valid/unmigrated
Version
AUTOSAR/AP/record/AP_SWS_SHWA_00508@rel:R25-11#3579b767
Content hash
3579b767
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_SafeHardwareAcceleration.pdf#nameddest=AP_SWS_SHWA_00508
Status: valid/unmigrated Version: rel:R25-11#b5172dde Versionshistorie & Revisions (1 transition)
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/AP_SWS_SHWA_00508@rel:R25-11#b5172dde
Point-in-Time History:
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