function Create [SWS_EM_02562] Upstream: RS_AP_00119, RS_AP_00120, RS_AP_00128, RS_AP_00139, RS_AP_00144, RS_EM_00103, RS_AP_00159
static ara::core::Result< ExecutionClient > Create (std::function< void()> terminationHandler) noexcept;
Named constructor for ExecutionClient.
The static function Create serves as a named constructor for instantiating ara::exec::ExecutionClient [SWS_EM_02562]. Upon invocation, the callback terminationHandler (of type std::function<void()>) is passed, which is executed concurrently in a background thread when a SIGTERM signal arrives [SWS_EM_02562]. Typically, this callback sets a global flag or wakes up blocked threads to initiate graceful termination. The caller must ensure that the handler remains callable throughout the entire lifetime of the ExecutionClient instance, which must be observed in particular when binding to object instances via std::bind [SWS_EM_02562].
As a return value, the function provides a ara::core::Result<ExecutionClient>, which contains either the created instance or an error code [SWS_EM_02562]. If creation fails, two specific errors are defined:
ara::exec::ExecErrc::kInvalidArgument: The passedterminationHandlerdoes not contain a callable function (rollback semantics; remediation by passing a valid callable) [SWS_EM_02562].ara::exec::ExecErrc::kNoCommunication: A communication error has occurred (no rollback semantics; remediation by retrying) [SWS_EM_02562].
The function is declared as noexcept, is considered exception-safe as well as thread-safe, and can internally call a developer-defined constructor [SWS_EM_02562]. Interpretation: The call is likely to typically take place during the early initialization phase of a process in order to set up signal handling in good time before the main workload begins. Question Q-555aea895feb2123 (open) This pattern of a named constructor with callback registration corresponds to the creation of the StateClient via its own Create function [SWS_EM_02276].
This text was generated by an AI system based on specification data.
| Header-Datei | #include "ara/exec/execution_client.h" |
|---|---|
| Scope | class ara::exec::ExecutionClient |
| Exception-Sicherheit | exception safe |
| Thread-Sicherheit | thread-safe |
Parameter (in)
| Parameter | Beschreibung |
|---|---|
| terminationHandler | Callback which is called if ExecutionClient receives SIGTERM signal. The callback is executed in a background thread. A typical implementation of this callback will set a global flag (and potentially unblock other threads) to perform a graceful termination. Lifetime: it is expected that terminationHandler remains callable, during entire lifetime of the ExecutionClient instance. This is especially important if, terminationHandler is bound to an instance of a class (e.g. using std::bind). |
Rückgabewert
| Typ | Beschreibung |
|---|---|
| ara::core::Result<ExecutionClient > | a result that contains either a ExecutionClient object or an error. |
Fehler
| Fehlercode | Beschreibung |
|---|---|
| ara::exec::ExecErrc::kNoCommunication | no_rollback_semantics Communication error occurred. Recovery: try again |
| ara::exec::ExecErrc::kInvalidArgument | rollback_semantics Given terminationHandler doesn’t contain a callable function. Recovery: change argument |
Request a governed re-review of this record. The record is not changed immediately.
- Record
AUTOSAR/AP/record/SWS_EM_02562- Status
- valid/unmigrated
- Version
AUTOSAR/AP/record/SWS_EM_02562@rel:R25-11#b09af104- Content hash
b09af104- Source
- https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_ExecutionManagement.pdf#nameddest=SWS_EM_02562
Status: valid/unmigrated
Version: rel:R25-11#446bd257
Versionshistorie & Revisions (1 transition, 4 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_EM_02562@rel:R25-11#446bd257
Recorded Revisions (4):
- R25-11
rel:R25-11#b09af1042026-09-30 - R23-11
rel:R23-11#10b43bed2026-10-14 - R24-11
rel:R24-11#7ed2aeda2026-10-14 - R25-11
rel:R25-11#446bd2572026-10-14 active
Requirement Text as-of this release:
Curation Decisions:
Reachable Artifacts & Dependents:
| Date | Actor | Transition | Reason / Rationale | Campaign |
|---|---|---|---|---|
| 2026-08-13 | tool | none → valid/unmigrated | mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record | 2026-08-13-status-backfill |
gemini-3.8-flash-low· 2026-10-13 · German original