DEENESPTFRRUARHIKOZHNL

klasse ara::core::Executor

[SWS_CORE_00008] Upstream: RS_AP_00130

class Executor {...};

Provides an interface for a executing context, which asynchronously invokes Callable ([4] [func.wrap.func]) objects in a guaranteed thread-safe context. The execute(...) method in [SWS_CORE_00024] returns a ara::core::Future object to the caller for further result/error extraction or management of the asynchronous-context; the execute_oneway(...) method in [SWS_CORE_00025] imply fire-and-forget semantics and thus no asynchronous-context (ara::core::Future) is returned.

Literaturverzeichnis SWS Core: [4] ISO/IEC 14882:2014, Information technology – Programming languages – C++ – www.iso.org

Header-Datei#include "ara/core/executor.h"
Forwarding-Header#include "ara/core/core_fwd.h"
Scopenamespace ara::core

User GuideAI-GEGENEREERD

Maakt de asynchrone, thread-safe uitvoering van aanroepbare objecten mogelijk met optionele teruggave via futures.
DOOR AI GEGENEREERD ongecontroleerd Model: gemini-3.8-flash-medium · Inspanning: medium · Temperatuur: niet regelbaar · Prompt: 690890643de1 Herkomst Open vragen (2)
vertaald uit de Duitse handleidinggemini-3.8-flash-low · 2026-10-13 · Duits origineel

Maakt de asynchrone, thread-safe uitvoering van aanroepbare objecten mogelijk met optionele teruggave via futures.

De klasse ara::core::Executor biedt een interface voor de asynchrone uitvoering van aanroepbare objecten in een gegarandeerde thread-safe context. Taken worden ofwel resultaatgericht via execute [SWS_CORE_00024] met teruggave van een ara::core::Future voor waarden of foutcodes gestart, ofwel statusonafhankelijk via oneway_execute [SWS_CORE_00025] in fire-and-forget-modus overgedragen. Als centrale randvoorwaarde moet worden opgemerkt dat execute zelf niet thread-safe is en parallelle aanroepen op dezelfde instantie extern moeten worden gesynchroniseerd, terwijl de uitvoering van de callable op de achtergrond thread-safe plaatsvindt.

Context

De klasse ara::core::Executor biedt een interface voor een uitvoeringscontext die aanroepbare eenheden (callables) asynchroon in een gegarandeerde, thread-safe omgeving uitvoert. Ze dient als abstractielaag tussen de aanroepende thread en de asynchrone achtergrondverwerking. Voor de overdracht van opdrachten zijn twee mechanismen beschikbaar: De methode execute [SWS_CORE_00024] draagt een taak resultaatgericht over en retourneert een ara::core::Future-object, waarmee de latere retourwaarde of een foutcode kan worden gesynchroniseerd en opgevraagd. Voor loutere notificaties of statusonafhankelijke achtergrondoperaties biedt de klasse de methode oneway_execute [SWS_CORE_00025], die een fire-and-forget-semantiek volgt en geen asynchrone context aan de aanroeper teruglevert. Vermoedelijk kapselt de concrete implementatie op de achtergrond een threadbeheer of taakwachtrij in om de gelijktijdige verwerking te coördineren. Vraag Q-068fe33f2900d6cf (open)

Levenscyclus

De instantiëring en levensduur van een ara::core::Executor zijn onderworpen aan gedifferentieerde regels met betrekking tot exception safety en thread safety:

  • Kopiëren: De copy-constructor [SWS_CORE_00009] en de copy-assignment-operator [SWS_CORE_00017] zijn als thread-safe gespecificeerd, maar niet als exception-safe (not exception safe) geclassificeerd. Een kopieerbewerking kan daarom mislukken als benodigde resources niet kunnen worden gealloceerd.
  • Verplaatsen: De move-constructor [SWS_CORE_00015] en de move-assignment [SWS_CORE_00018] zijn gedeclareerd als noexcept en daarmee exception-safe. Verplaatsingsbewerkingen zijn echter niet thread-safe (not thread-safe), waardoor gelijktijdige toegangen tijdens het verplaatsen door de aanroeper moeten worden gesynchroniseerd.
  • Vernietiging: De destructor [SWS_CORE_00019] is uitgevoerd als noexcept en thread-safe, waardoor de levenscyclus van een instantie veilig kan worden beëindigd.

Wat betreft gelijktijdigheid tijdens bedrijf is een fundamentele scheiding zichtbaar: Terwijl oneway_execute [SWS_CORE_00025] thread-safe is, is execute [SWS_CORE_00024] geclassificeerd als niet thread-safe. Het ontbreken van thread safety bij execute is vermoedelijk toe te schrijven aan het intern aanmaken en beheren van het onderliggende toestandsobject voor de resulterende future, waardoor gelijktijdige aanroepen van execute op dezelfde instantie extern moeten worden gesynchroniseerd. Vraag Q-4425e6b07758230e (open)

Gebruikspad

Het gebruik van ara::core::Executor valt uiteen in twee hoofdtrajecten, afhankelijk van de vraag of een retourwaarde vereist is:

  1. Resultaatgericht pad (execute): De aanroeper draagt een aanroepbaar object f en optionele argumenten p... over aan execute [SWS_CORE_00024]. De methode levert onmiddellijk een ara::core::Future terug, waarvan het resultaattype is gebaseerd op het afgeleide retourtype van de aanroep. De callable wordt asynchroon in de gegarandeerde context uitgevoerd. Zodra de verwerking is voltooid, kan de aanroeper de resultaatwaarde of een potentiële foutcode uit de future extraheren.
  2. Eenrichtingspad (oneway_execute): Heeft de aanroeper respons noch synchronisatie nodig, dan wordt oneway_execute [SWS_CORE_00025] aangeroepen. De callable wordt eveneens asynchroon uitgevoerd, maar er bestaat geen retourwaarde (void).
Asynchroon uitvoeringsverloop met ara::core::ExecutorAufruferara::core::ExecutorAsynchroner Kontextara::core::Futureexecute(f, p...)Future erzeugenara::core::Future teruggevenf(p...) asynchron startenCallable f(p...) uitvoerenResultaat of fout instellenErgebnis / Fehler abfragenErgebniswert / Fehlercode

Sequentiediagram: Asynchrone taakafhandeling via execute en opvragen van het resultaat via future. Bronnen: [SWS_CORE_00024]

Foutscenario's

De aanroepmethoden execute [SWS_CORE_00024] en oneway_execute [SWS_CORE_00025] werpen geen C++-uitzonderingen op; beide zijn expliciet gespecificeerd als noexcept. Evenzo definieert de specificatie voor execute geen gestandaardiseerde foutcodes voor de overdrachtsaanroep zelf [SWS_CORE_00024].

Treedt er echter tijdens de asynchrone verwerking van de callable een fout op, dan wordt deze gepropageerd via het door execute geretourneerde ara::core::Future: in geval van een fout kapselt de future een foutcode in, terwijl bij succes het type ara::core::Result::value_type met het functieresultaat beschikbaar wordt gesteld [SWS_CORE_00024]. Bij oneway_execute [SWS_CORE_00025] bestaat er door het ontwerp geen mogelijkheid tot foutteruggave aan de aanroeper; fouten blijven in de asynchrone context.

Deze handleiding is samengesteld door een AI en baseert zich uitsluitend op de specificatie van AUTOSAR Adaptive R25-11.

Ledenkaart

Constructors en destructor

2

Operatoren

1

Klassendiagram

Hohle Dreieckspfeile = Vererbung (zeigt zur Basisklasse); Klicken öffnet die jeweilige Klassenseite.

G nara__core__Executor877 Executor + Executor() + operator=() + ~Executor() + execute() + oneway_execute()

Detailweergave

Kies een item in de inhoudsopgave.

Constructors en destructor

Executor functie 2

Copy constructor

Overloads Executor 2
Executor (const Executor &other); SWS_CORE_00009
Executor (Executor &&other) noexcept; SWS_CORE_00015
~Executor functie

Destructor

~Executor () noexcept;

Methoden

execute functie

Asynchronously invoke F with the provided arguments P....

template <class F, class... P> ara::core::Future< std::invoke_result_t< std::decay_t< F >, std::decay_t< P >... > > execute (F &&f, P &&... p) noexcept;

Asynchronously invoke F with the provided arguments P....

template <class F, class... P> void oneway_execute (F &&f, P &&... p) noexcept;

Operatoren

operator= functie 2

Copy assignment operator

Overloads = 2
Executor & operator= (const Executor &other); SWS_CORE_00017
Executor & operator= (Executor &&other) noexcept; SWS_CORE_00018

Documentatie van de methoden

functie Executor [SWS_CORE_00009] Upstream: RS_AP_00130

Executor (const Executor &other);

Copy constructor

Header-Datei#include "ara/core/executor.h"
Scopeclass ara::core::Executor
Exception-Sicherheitnot exception safe
Thread-Sicherheitthread-safe

Parameter (in)

ParameterBeschreibung
otherOther ara::core::Executor to copy

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

Record
AUTOSAR/AP/record/SWS_CORE_00009
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CORE_00009@rel:R25-11#840c06e5
Content hash
840c06e5
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Core.pdf#nameddest=SWS_CORE_00009
Status: valid/unmigrated Version: rel:R25-11#60a2a566 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_CORE_00009@rel:R25-11#60a2a566
Point-in-Time History:
Recorded Revisions (3):
  • R25-11rel:R25-11#3391383e2026-09-30
  • R24-11rel:R24-11#6c85f96c2026-10-14
  • R25-11rel:R25-11#60a2a5662026-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

functie Executor [SWS_CORE_00015] Upstream: RS_AP_00130

Executor (Executor &&other) noexcept;

Move constructor

Header-Datei#include "ara/core/executor.h"
Scopeclass ara::core::Executor
Exception-Sicherheitexception safe
Thread-Sicherheitnot thread-safe

Parameter (in)

ParameterBeschreibung
otherOther ara::core::Executor to move

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

Record
AUTOSAR/AP/record/SWS_CORE_00015
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CORE_00015@rel:R25-11#fcedfa89
Content hash
fcedfa89
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Core.pdf#nameddest=SWS_CORE_00015
Status: valid/unmigrated Version: rel:R25-11#aa1a25ba 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_CORE_00015@rel:R25-11#aa1a25ba
Point-in-Time History:
Recorded Revisions (3):
  • R25-11rel:R25-11#5a1547e72026-09-30
  • R24-11rel:R24-11#0606a2422026-10-14
  • R25-11rel:R25-11#aa1a25ba2026-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

functie execute [SWS_CORE_00024] Upstream: RS_AP_00130

template <class F, class... P> ara::core::Future< std::invoke_result_t< std::decay_t< F >, std::decay_t< P >... > > execute (F &&f, P &&... p) noexcept;

Asynchronously invoke F with the provided arguments P....

DOOR AI GEGENEREERD ongecontroleerd Model: gemini-3.8-flash-medium · Inspanning: medium · Temperatuur: niet regelbaar · Prompt: 9d31d266cefd Herkomst Open vragen (1)
vertaald uit de Duitse handleidinggemini-3.8-flash-low · 2026-10-13 · Duits origineel

De functie execute van de klasse ara::core::Executor dient voor de asynchrone uitvoering van een meegegeven functieobject f samen met de argumenten p... ([SWS_CORE_00024]). Als retourwaarde levert ze een ara::core::Future op, die bij succes het resultaat van de aanroep inkapselt of in geval van een fout een passende foutcode beschikbaar stelt ([SWS_CORE_00024]). De functie zelf is gedeclareerd met de specificator noexcept.

Gestandaardiseerde foutcodes worden voor de functieaanroep niet gespecificeerd ([SWS_CORE_00024]). Wat betreft gelijktijdigheid is execute weliswaar geclassificeerd als exception safe, maar geldt expliciet als not thread-safe ([SWS_CORE_00024]). Parallelle toegang tot dezelfde instantie van ara::core::Executor moet daarom vermoedelijk op gebruikersniveau worden gesynchroniseerd. Vraag Q-6b839826a7d9742f (open)

De interactie met asynchrone control flows blijkt met name bij ketens via then ([SWS_CORE_00337], [SWS_CORE_06237]). Daar wordt een executor-context meegegeven in de context waarvan opvolgende continuation-functies met het verkregen ara::core::Result worden uitgevoerd.

Deze tekst is automatisch gegenereerd. Alle inhoudelijke gegevens zijn gebaseerd op de specificatie AUTOSAR Adaptive R25-11.

Header-Datei#include "ara/core/executor.h"
Scopeclass ara::core::Executor
Exception-Sicherheitexception safe
Thread-Sicherheitnot thread-safe

Template-Parameter

ParameterBeschreibung
Fa Callable type
Pargument list to the Callable

Parameter (in)

ParameterBeschreibung
fa Callable to be executed
pparameters to be supplied with the Callable

Rückgabewert

TypBeschreibung
ara::core::Future<std::invoke_result_t<std::decay_t< F >, std::decay_t< P >... > >• If successful: an ara::core::Future containing a ara:: core::Result::value_type containing the result of the callable F • If unsuccessful: an ara::core::Future containing an Error Code

Fehler

FehlercodeBeschreibung
This 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/SWS_CORE_00024
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CORE_00024@rel:R25-11#4abc5b8e
Content hash
4abc5b8e
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Core.pdf#nameddest=SWS_CORE_00024
Status: valid/unmigrated Version: rel:R25-11#6c85a6a9 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_CORE_00024@rel:R25-11#6c85a6a9
Point-in-Time History:
Recorded Revisions (3):
  • R25-11rel:R25-11#8144c3b12026-09-30
  • R24-11rel:R24-11#d465a8212026-10-14
  • R25-11rel:R25-11#6c85a6a92026-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

functie oneway_execute [SWS_CORE_00025] Upstream: RS_AP_00130

template <class F, class... P> void oneway_execute (F &&f, P &&...                p) noexcept;

Asynchronously invoke F with the provided arguments P....

DOOR AI GEGENEREERD ongecontroleerd Model: gemini-3.8-flash-medium · Inspanning: medium · Temperatuur: niet regelbaar · Prompt: 1e96ad32e48d Herkomst Open vragen (1)
vertaald uit de Duitse handleidinggemini-3.8-flash-low · 2026-10-13 · Duits origineel

Gebruik en semantiek

De template-functie oneway_execute van de klasse ara::core::Executor dient voor de asynchrone uitvoering van een aanroepbare eenheid f (callable) met de meegegeven argumenten p... [SWS_CORE_00025]. Omdat de functie geen retourwaarde oplevert (retourtype void) en de uitvoering asynchroon plaatsvindt, keert de aanroep onmiddellijk terug naar de aanroeper, zonder te wachten op het einde of een resultaat van de uitvoering [SWS_CORE_00025].

Foutafhandeling en uitzonderingsveiligheid

De functie is gedeclareerd als noexcept en gespecificeerd als exceptieveilig (exception safe) [SWS_CORE_00025]. Mogelijke fouten of excepties binnen het meegegeven callable moeten daarom vermoedelijk intern in het callable zelf worden opgevangen en afgehandeld, aangezien er geen foutterugmelding of exceptie aan de aanroepende context kan worden doorgegeven. Vraag Q-c8d31cfa9c2e3ab9 (open)

Gelijktijdigheid en beperkingen

Conform de specificatie is oneway_execute geclassificeerd als thread-safe (thread-safe) [SWS_CORE_00025]. De functie kan zodoende gelijktijdig vanuit verschillende threads op dezelfde instantie van ara::core::Executor worden aangeroepen. De invoeging vindt plaats via het headerbestand #include "ara/core/executor.h" [SWS_CORE_00025].

Deze gebruiksinstructie is geautomatiseerd opgesteld op basis van AUTOSAR R25-11.

Header-Datei#include "ara/core/executor.h"
Scopeclass ara::core::Executor
Exception-Sicherheitexception safe
Thread-Sicherheitthread-safe

Template-Parameter

ParameterBeschreibung
Fa Callable type
Pargument list to the Callable

Parameter (in)

ParameterBeschreibung
fa Callable to be executed
pparameters to be supplied with the Callable

Rückgabewert

TypBeschreibung
None

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

Record
AUTOSAR/AP/record/SWS_CORE_00025
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CORE_00025@rel:R25-11#f6b46651
Content hash
f6b46651
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Core.pdf#nameddest=SWS_CORE_00025
Status: valid/unmigrated Version: rel:R25-11#f89da2ea 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_CORE_00025@rel:R25-11#f89da2ea
Point-in-Time History:
Recorded Revisions (3):
  • R25-11rel:R25-11#ebd0128b2026-09-30
  • R24-11rel:R24-11#fe75fa6e2026-10-14
  • R25-11rel:R25-11#f89da2ea2026-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

functie operator= [SWS_CORE_00017] Upstream: RS_AP_00130

Executor & operator= (const Executor &other);

Copy assignment operator

Header-Datei#include "ara/core/executor.h"
Scopeclass ara::core::Executor
Exception-Sicherheitnot exception safe
Thread-Sicherheitthread-safe

Parameter (in)

ParameterBeschreibung
otherOther ara::core::Executor to copy

Rückgabewert

TypBeschreibung
Executor &The copied object

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

Record
AUTOSAR/AP/record/SWS_CORE_00017
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CORE_00017@rel:R25-11#79ae3cbe
Content hash
79ae3cbe
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Core.pdf#nameddest=SWS_CORE_00017
Status: valid/unmigrated Version: rel:R25-11#6011a69d 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_CORE_00017@rel:R25-11#6011a69d
Point-in-Time History:
Recorded Revisions (3):
  • R25-11rel:R25-11#c0dcae292026-09-30
  • R24-11rel:R24-11#137015232026-10-14
  • R25-11rel:R25-11#6011a69d2026-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

functie operator= [SWS_CORE_00018] Upstream: RS_AP_00130

Executor & operator= (Executor &&other) noexcept;

Move assignment operator

Header-Datei#include "ara/core/executor.h"
Scopeclass ara::core::Executor
Exception-Sicherheitexception safe
Thread-Sicherheitnot thread-safe

Parameter (in)

ParameterBeschreibung
otherOther ara::core::Executor to move

Rückgabewert

TypBeschreibung
Executor &The moved object

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

Record
AUTOSAR/AP/record/SWS_CORE_00018
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CORE_00018@rel:R25-11#c9c71c16
Content hash
c9c71c16
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Core.pdf#nameddest=SWS_CORE_00018
Status: valid/unmigrated Version: rel:R25-11#1ca71ff7 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_CORE_00018@rel:R25-11#1ca71ff7
Point-in-Time History:
Recorded Revisions (3):
  • R25-11rel:R25-11#57cffdd32026-09-30
  • R24-11rel:R24-11#15bce54f2026-10-14
  • R25-11rel:R25-11#1ca71ff72026-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

functie ~Executor [SWS_CORE_00019] Upstream: RS_AP_00130

~Executor () noexcept;

Destructor

Header-Datei#include "ara/core/executor.h"
Scopeclass ara::core::Executor
Exception-Sicherheitexception safe
Thread-Sicherheitthread-safe

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

Record
AUTOSAR/AP/record/SWS_CORE_00019
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CORE_00019@rel:R25-11#1b8e1437
Content hash
1b8e1437
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Core.pdf#nameddest=SWS_CORE_00019
Status: valid/unmigrated Version: rel:R25-11#336c443d 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_CORE_00019@rel:R25-11#336c443d
Point-in-Time History:
Recorded Revisions (3):
  • R25-11rel:R25-11#96c96d482026-09-30
  • R24-11rel:R24-11#7a18cb1c2026-10-14
  • R25-11rel:R25-11#336c443d2026-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