DEENESPTFRRUARHIKOZHNL

clase ara::core::Future< void, E >

[SWS_CORE_06221] Upstream: RS_AP_00130

template <typename E> class Future< void, E > final {...};

Specialization of class Future for "void" values. The implementation shall flag the condition: ( E != ara::core::ErrorCode ) as a compile error.

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

Guía del usuarioGENERADO POR IA

Permite esperar la finalización de una operación asíncrona sin valor de retorno, así como la extracción del estado de error.
GENERADO POR IA no revisado Modelo: gemini-3.8-flash-medium · Esfuerzo: medium · Temperatura: no controlable · Prompt: e943c154e07e Procedencia
traducido de la guía alemanagemini-3.8-flash-low · 2026-10-13 · Original en alemán

Permite esperar la finalización de una operación asíncrona sin valor de retorno, así como la extracción del estado de error.

La clase ara::core::Future<void, E> permite la sincronización asíncrona y la comprobación de errores de operaciones sin valor de retorno en AUTOSAR Adaptive [SWS_CORE_06236]. Como tipo no copiable, permite esperar a la finalización, así como la recuperación de resultados a prueba de excepciones como ara::core::Result<void, E> [SWS_CORE_06236] o el procesamiento posterior asíncrono mediante una función de continuación [SWS_CORE_06231]. Tras extraer el resultado, el estado compartido se invalida, de modo que las invocaciones posteriores sin un estado válido constituyen una infracción [SWS_CORE_06236].

Contexto

La especialización de clase plantilla ara::core::Future<void, E> representa el extremo receptor de una operación asíncrona en AUTOSAR Adaptive que, al finalizar con éxito, no devuelve ningún valor, sino que señala puramente el acaecimiento del evento o un error producido. Conforme a la descripción de la clase, la implementación debe responder a la condición E != ara::core::ErrorCode con un error de compilación. La clase interactúa típicamente con un ara::core::Promise correspondiente que llena el estado compartido (shared state) [SWS_CORE_06236], así como con contextos de ejecución asíncronos al registrar funciones de continuación [SWS_CORE_06237].

Ciclo de vida

Las instancias de ara::core::Future<void, E> son objetos puramente con semántica de movimiento: el constructor de copia [SWS_CORE_06234] y el operador de asignación por copia [SWS_CORE_06235] están eliminados (delete). Un objeto creado mediante el constructor por defecto no posee estado compartido y se comporta de manera análoga a std::future [SWS_CORE_06222]. Mediante construcción por movimiento [SWS_CORE_06223] o asignación por movimiento [SWS_CORE_06225], una instancia asume la propiedad de un shared state procedente de otra instancia.

El ciclo de vida está marcado en gran medida por la condición del shared state. Mediante el método valid() se puede comprobar si la instancia está vinculada a un shared state y, por tanto, puede utilizarse [SWS_CORE_06227]. En cuanto el resultado se recupera mediante GetResult() [SWS_CORE_06236] o get() [SWS_CORE_06226], o se registra una continuación mediante then() [SWS_CORE_06231], el objeto Future pierde su shared state y valid() devuelve false. El destructor libera cualquier estado compartido remanente [SWS_CORE_06233]. En lo relativo a la concurrencia, las operaciones de comprobación y destrucción tales como valid() [SWS_CORE_06227], is_ready() [SWS_CORE_06232] y el destructor [SWS_CORE_06233] son seguras para subprocesos (thread-safe), mientras que las operaciones que modifican el estado como GetResult() [SWS_CORE_06236], get() [SWS_CORE_06226] y las funciones de espera [SWS_CORE_06228] no son seguras para subprocesos.

future_states Ungueltig No válido (valid() == false) Ausstehend Válido / Pendiente (valid() == true, is_ready() == false) Ungueltig->Ausstehend Move-Konstruktion / Zuweisung Ausstehend->Ungueltig then() Bereit Válido / Listo (valid() == true, is_ready() == true) Ausstehend->Bereit Promise setzt Wert / Fehler Bereit->Ungueltig GetResult() / get() Bereit->Ungueltig then()

Diagrama de estados: transiciones de estado y validez de ara::core::Future<void, E>. Fuentes: [SWS_CORE_06222], [SWS_CORE_06226], [SWS_CORE_06227], [SWS_CORE_06231], [SWS_CORE_06232], [SWS_CORE_06233], [SWS_CORE_06236]

Ruta de uso

En la vía de uso síncrona, un consumidor espera a que finalice la operación asíncrona. Con is_ready() se puede consultar con bajo bloqueo si se dispone de un valor o de un error [SWS_CORE_06232]. Como alternativa, se puede esperar de forma bloqueante mediante wait() [SWS_CORE_06228], o por un tiempo limitado mediante wait_for() [SWS_CORE_06229] y wait_until() [SWS_CORE_06230]. Si el resultado está disponible, la consulta del valor se realiza preferentemente a prueba de excepciones mediante GetResult(), devolviéndose un ara::core::Result<void, E> [SWS_CORE_06236].

En la vía asíncrona, el método then() permite el registro de una función de continuación (continuation), que se ejecuta tan pronto como se disponga del resultado [SWS_CORE_06231]. En este proceso puede transferirse opcionalmente un contexto de ejecución (executor) [SWS_CORE_06237]. La continuación recibe el Result<void, E> como rvalue. El tipo de retorno de then() desempaqueta automáticamente los tipos Future o Result anidados (unwrapping) [SWS_CORE_06231].

Recuperación síncrona del resultado mediante GetResultAplicaciónFutureSharedStatevalid()trueis_ready()Comprobar estadotrue (resultado o error disponible)trueGetResult()std::move(Ergebnis)Result<void, E>Establecer estado compartido como no válido (valid() == false)Result<void, E>

Diagrama de secuencia: flujo síncrono para la consulta de resultados a través de GetResult. Fuentes: [SWS_CORE_06227], [SWS_CORE_06228], [SWS_CORE_06232], [SWS_CORE_06236]

Escenarios de error

Si se invoca una operación dependiente del estado (como GetResult(), is_ready(), wait(), wait_for(), wait_until() o then()) sobre una instancia no válida (valid() == false), se produce una infracción de precondición que se trata como FutureInvalidViolation [SWS_CORE_06228], [SWS_CORE_06229], [SWS_CORE_06230], [SWS_CORE_06231], [SWS_CORE_06232], [SWS_CORE_06236], [SWS_CORE_06237]. Al invocar get() sobre una instancia no válida, se desencadena en su lugar una FutureException con el código de error kNoState [SWS_CORE_06226]; get() no participa en la resolución de sobrecargas cuando las excepciones C++ están desactivadas [SWS_CORE_06226].

Si la promesa correspondiente se destruyó o abandonó el estado compartido sin establecer un resultado ni un error explícito, el código de error FutureErrc::kBrokenPromise se deposita en el shared state con arreglo a [SWS_CORE_00400] [SWS_CORE_06226], [SWS_CORE_06236]. GetResult() devuelve este código como error en Result<void, E> [SWS_CORE_06236]. Si una continuación registrada en then() lanza una excepción que no implementa una infracción, esto conduce a FutureContinuationHasThrownViolation [SWS_CORE_06231], [SWS_CORE_06237].

Esta guía se basa exclusivamente en la especificación AUTOSAR para ara::core::Future<void, E> en la Release R25-11.

Mapa de miembros

Diagrama de clases

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

G nara__core__Future__void__E__740 Future< void, E > + Future() + operator=() + ~Future() + GetResult() + get() + is_ready() + then() + valid() + wait() + wait_for() + wait_until()

Vista de detalle

Selecciona una entrada en el índice.

Constructores y destructor

Future función 3

Default constructor This function shall behave the same as the corresponding std::future function. ≙ std::future

Sobrecargas Future 3
Future () noexcept; SWS_CORE_06222
Future (Future &&other) noexcept; SWS_CORE_06223
Future (const Future &other)=delete; SWS_CORE_06234
~Future función

Destructor for Future objects. Abandons any shared state

~Future () noexcept;

Métodos

get función

Returns nothing. This function shall behave the same as the corresponding std::future function. Part of the behavior taken from the std::future is that after a call to this function the Future is not valid anymore (valid() == false). ≙ std::future

void get () noexcept(false);
GetResult función

Get the result. Similar to Future::get(), this call blocks until the value or an error is available. However, this call will never throw an exception. Part of the behavior taken from Future::get() is that after a call to this function the Future is not valid anymore (valid() == false).

Result< void, E > GetResult () noexcept(std::is_nothrow_move_ constructible< E >::value);
is_ready función

Return whether the asynchronous operation has finished. If this function returns true, get(), Get Result() and the wait calls are guaranteed not to block.

bool is_ready () const noexcept;
then función 2

Create a new Future with the content returned by func when passed the Result of this Future. func may be called in the context of this call or in the context of Promise::set_value() or Promise::SetError() or somewhere else. valid() == false on the original future object immediately after it returns. The Callable input argument "func" takes a Result<void,E> object as parameter. This will be the Result obtained via GetResult from the Future instance itself, on which .then() is being called. The Result is passed to func as an rvalue expression. The return type of then depends on the return type of func (aka continuation). Let U be the return type of the continuation (i.e. a type equivalent to std::invoke_result_ t<std::decay_t<F>,Result<void,E>>). • If U is Future<T2,E2> for some types T2, E2, then the return type of then() is Future<T2,E2>. This is known as implicit Future unwrapping. • If U is Result<T2,E2> for some types T2, E2, then the return type of then() is Future<T2,E2>. This is known as implicit Result unwrapping. • Otherwise it is Future<U,E>. Continuations that are registered with Future::then() are registered in the Future F that Future::then() returns. No such continuation shall be executed after the destructor of the Future F returns. A continuation that is already being executed shall run to completion. Note: that means that the destructor of Future might block until the currently running continuation has been completed. The continuation shall not throw, except for the purpose of implementing a Violation. Note: Exceptions can be used within the continuation, however if they do not realize a Violation, they must not escape the continuation. Note: Users who need to propagate information from closures’ exceptions should translate them to an error and return an ara::core::Result or ara::core::Future from the continuation with the error stored in it. ≙ std::invoke_result_

Sobrecargas then 2
template <typename F> auto then (F &&func) noexcept -> Future< <see below> >; SWS_CORE_06231
template <typename F, typename ExecutorT> auto then (F &&func, ExecutorT &&executor) noexcept -> Future< <see below> >; SWS_CORE_06237
valid función

Checks if the Future is valid, i.e. if it has a shared state.

bool valid () const noexcept;
wait función

Wait for a value or an error to be available. This function shall behave the same as the corresponding std::future function ≙ std::future

void wait () const noexcept;
wait_for función

Wait for the given period, or until a value or an error is available. This function shall behave the same as the corresponding std::future function ≙ std::future

template <typename Rep, typename Period> FutureStatus wait_for (const std::chrono::duration< Rep, Period > &timeoutDuration) const noexcept;
wait_until función

Wait until the given time, or until a value or an error is available. This function shall behave the same as the corresponding std::future function. ≙ std::future

template <typename Clock, typename Duration> FutureStatus wait_until (const std::chrono::time_point< Clock, Duration > &deadline) const noexcept;

Operadores

operator= función 2

Move assign from another instance. This function shall behave the same as the corresponding std::future function. ≙ std::future

Sobrecargas = 2
Future & operator= (Future &&other) noexcept; SWS_CORE_06225
Future & operator= (const Future &other)=delete; SWS_CORE_06235

Documentación de los métodos

función Future [SWS_CORE_06222] Upstream: RS_AP_00130

Future () noexcept;

Default constructor This function shall behave the same as the corresponding std::future function.

Header-Datei#include "ara/core/future.h"
Scopeclass ara::core::Future< void, E >
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_06222
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CORE_06222@rel:R25-11#4a9d8bb4
Content hash
4a9d8bb4
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Core.pdf#nameddest=SWS_CORE_06222
Status: valid/unmigrated Version: rel:R25-11#5a060501 Versionshistorie & Revisions (1 transition, 8 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_06222@rel:R25-11#5a060501
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#1afcba652026-09-30
  • R19-11rel:R19-11#0daa41512026-10-14
  • R20-11rel:R20-11#2b96cd1f2026-10-14
  • R21-11rel:R21-11#2b96cd1f2026-10-14
  • R22-11rel:R22-11#769923512026-10-14
  • R23-11rel:R23-11#5dfa683d2026-10-14
  • R24-11rel:R24-11#5c2585642026-10-14
  • R25-11rel:R25-11#5a0605012026-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

función Future [SWS_CORE_06223] Upstream: RS_AP_00130

Future (Future &&other) noexcept;

Move constructor from another instance This function shall behave the same as the corresponding std::future function.

Header-Datei#include "ara/core/future.h"
Scopeclass ara::core::Future< void, E >
Exception-Sicherheitexception safe
Thread-Sicherheitnot thread-safe

Parameter (in)

ParameterBeschreibung
otherthe other instance

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

Record
AUTOSAR/AP/record/SWS_CORE_06223
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CORE_06223@rel:R25-11#9cd03ffc
Content hash
9cd03ffc
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Core.pdf#nameddest=SWS_CORE_06223
Status: valid/unmigrated Version: rel:R25-11#d8ab302b Versionshistorie & Revisions (1 transition, 8 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_06223@rel:R25-11#d8ab302b
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#c4ca9e912026-09-30
  • R19-11rel:R19-11#a14b593d2026-10-14
  • R20-11rel:R20-11#29b853f02026-10-14
  • R21-11rel:R21-11#29b853f02026-10-14
  • R22-11rel:R22-11#0b366b7e2026-10-14
  • R23-11rel:R23-11#4e1158ee2026-10-14
  • R24-11rel:R24-11#43ec03e42026-10-14
  • R25-11rel:R25-11#d8ab302b2026-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

función Future [SWS_CORE_06234] Upstream: RS_AP_00130

Future (const Future &other)=delete;

Copy constructor shall be disabled

Header-Datei#include "ara/core/future.h"
Scopeclass ara::core::Future< void, E >

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

Record
AUTOSAR/AP/record/SWS_CORE_06234
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CORE_06234@rel:R25-11#5df38869
Content hash
5df38869
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Core.pdf#nameddest=SWS_CORE_06234
Status: valid/unmigrated Version: rel:R25-11#56462c5d Versionshistorie & Revisions (1 transition, 8 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_06234@rel:R25-11#56462c5d
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#f81e62902026-09-30
  • R19-11rel:R19-11#544640f62026-10-14
  • R20-11rel:R20-11#d96a22e02026-10-14
  • R21-11rel:R21-11#ea4dbae52026-10-14
  • R22-11rel:R22-11#302289e52026-10-14
  • R23-11rel:R23-11#8c086a182026-10-14
  • R24-11rel:R24-11#7c2e887e2026-10-14
  • R25-11rel:R25-11#56462c5d2026-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

función GetResult [SWS_CORE_06236] Upstream: RS_AP_00130

Result< void, E > GetResult () noexcept(std::is_nothrow_move_ constructible< E >::value);

Get the result. Similar to Future::get(), this call blocks until the value or an error is available. However, this call will never throw an exception. Part of the behavior taken from Future::get() is that after a call to this function the Future is not valid anymore (valid() == false).

Header-Datei#include "ara/core/future.h"
Scopeclass ara::core::Future< void, E >
Exception-Sicherheitconditionally exception safe
Thread-Sicherheitnot thread-safe
Verletzungen (Violations)FutureInvalidVio- If the Future is invalid ( valid ==FALSE ) lation

Rückgabewert

TypBeschreibung
Result< void, E >a Result as std::move(result from the shared state) with either a value or an error that has been put into the corresponding Promise. This can be because either: • explicit setting of the Error via Promise::SetError / Promise::Set Result or • the Promise was broken, meaning the shared state was abandoned by the corresponding Promise. Then the error is kBrokenPromise as defined in [SWS_CORE_00400]

Fehler

FehlercodeBeschreibung
FutureErrc::kBrokenPromiserollback_semantics if the Promise was broken, meaning the shared state was abandoned by the corresponding Promise.

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

Record
AUTOSAR/AP/record/SWS_CORE_06236
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CORE_06236@rel:R25-11#0aee1f7e
Content hash
0aee1f7e
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Core.pdf#nameddest=SWS_CORE_06236
Status: valid/unmigrated Version: rel:R25-11#932914cb Versionshistorie & Revisions (1 transition, 8 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_06236@rel:R25-11#932914cb
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#7184bdc92026-09-30
  • R19-11rel:R19-11#541daac72026-10-14
  • R20-11rel:R20-11#3adb03532026-10-14
  • R21-11rel:R21-11#3adb03532026-10-14
  • R22-11rel:R22-11#4366d27f2026-10-14
  • R23-11rel:R23-11#f033d7132026-10-14
  • R24-11rel:R24-11#243860772026-10-14
  • R25-11rel:R25-11#932914cb2026-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

función get [SWS_CORE_06226] Upstream: RS_AP_00130

void get () noexcept(false);

Returns nothing. This function shall behave the same as the corresponding std::future function. Part of the behavior taken from the std::future is that after a call to this function the Future is not valid anymore (valid() == false).

GENERADO POR IA no revisado Modelo: gemini-3.8-flash-medium · Esfuerzo: medium · Temperatura: no controlable · Prompt: 195e9e272b48 Procedencia
traducido de la guía alemanagemini-3.8-flash-low · 2026-10-13 · Original en alemán

La función miembro get de la especialización ara::core::Future<void, E> sirve para esperar el resultado de una operación asíncrona sin valor de retorno ([SWS_CORE_06226]). Se comporta como la función correspondiente de std::future y bloquea al llamante hasta que el resultado o un error esté disponible ([SWS_CORE_06226], [SWS_CORE_00336]). Tras la llamada, la instancia de future pierde su validez, de modo que rige valid() == false ([SWS_CORE_06226]).

La función está declarada como no segura contra excepciones (not exception safe) ([SWS_CORE_06226]). Si se registró un error en el Promise vinculado, se lanza una excepción correspondiente ([SWS_CORE_06226]). Si el estado compartido se abandonó prematuramente, se produce el código de error kBrokenPromise conforme a [SWS_CORE_00400] ([SWS_CORE_06226]). Si se ejecuta get sobre una instancia que ya no es válida, la función lanza una FutureException con el código de error kNoState ([SWS_CORE_06226]).

En lo relativo a la concurrencia, el método no es seguro entre hilos (not thread-safe) ([SWS_CORE_06226]). Por lo tanto, los accesos paralelos al mismo objeto requieren sincronización externa. Además, la función no participa en la resolución de sobrecargas si las excepciones de C++ están desactivadas en la toolchain del compilador ([SWS_CORE_06226]).

En interacción con funciones afines, [SWS_CORE_00332] (is_ready) garantiza que get seguro que no bloquea si la operación ya ha finalizado. Para contextos sin excepciones, AUTOSAR ofrece como alternativa [SWS_CORE_00336] (GetResult), el cual notifica los errores a través de un tipo de resultado en lugar de lanzar excepciones.

Este texto ha sido generado por una IA y sirve de guía orientativa; el texto vinculante es la especificación AUTOSAR.

Header-Datei#include "ara/core/future.h"
Scopeclass ara::core::Future< void, E >
Exception-Sicherheitnot exception safe
Thread-Sicherheitnot thread-safe

Rückgabewert

TypBeschreibung
None

Exceptions

Any exception of the type associated with the error that has been put into the corresponding Promise. This can be because either: • explicit setting of the Error via: Promise::SetError(E&&) Promise::SetError(const E&) / Promise::SetResult(const Result<T, E>&) Promise::SetResult(Result <T, E>&&) • the Promise was broken, meaning the shared state was abandoned by the corresponding Promise. Then the error is kBrokenPromise as defined in [SWS_CORE_00400]. FutureException in case the Future is invalid. The contained ErrorCode is kNoState

Hinweise: This function shall not participate in overload resolution when C++ exceptions are disabled in the compiler toolchain

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

Record
AUTOSAR/AP/record/SWS_CORE_06226
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CORE_06226@rel:R25-11#0a460e6c
Content hash
0a460e6c
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Core.pdf#nameddest=SWS_CORE_06226
Status: valid/unmigrated Version: rel:R25-11#6ad2ffae Versionshistorie & Revisions (1 transition, 8 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_06226@rel:R25-11#6ad2ffae
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#40fe52062026-09-30
  • R19-11rel:R19-11#877183822026-10-14
  • R20-11rel:R20-11#561b11012026-10-14
  • R21-11rel:R21-11#cd0d4bbb2026-10-14
  • R22-11rel:R22-11#41a0b49a2026-10-14
  • R23-11rel:R23-11#2c6048102026-10-14
  • R24-11rel:R24-11#2f0d210c2026-10-14
  • R25-11rel:R25-11#6ad2ffae2026-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

función is_ready [SWS_CORE_06232] Upstream: RS_AP_00130

bool is_ready () const noexcept;

Return whether the asynchronous operation has finished. If this function returns true, get(), Get Result() and the wait calls are guaranteed not to block.

Header-Datei#include "ara/core/future.h"
Scopeclass ara::core::Future< void, E >
Exception-Sicherheitexception safe
Thread-Sicherheitthread-safe
Verletzungen (Violations)FutureInvalidVio- If the Future is invalid (valid returns false) lation

Rückgabewert

TypBeschreibung
booltrue if the Future contains a value or an error, false otherwise

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

Record
AUTOSAR/AP/record/SWS_CORE_06232
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CORE_06232@rel:R25-11#3cf7128f
Content hash
3cf7128f
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Core.pdf#nameddest=SWS_CORE_06232
Status: valid/unmigrated Version: rel:R25-11#5186dad5 Versionshistorie & Revisions (1 transition, 8 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_06232@rel:R25-11#5186dad5
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#4784afca2026-09-30
  • R19-11rel:R19-11#b80f30db2026-10-14
  • R20-11rel:R20-11#e1d9ba9b2026-10-14
  • R21-11rel:R21-11#6a9c97832026-10-14
  • R22-11rel:R22-11#d2f71e3d2026-10-14
  • R23-11rel:R23-11#26d4877a2026-10-14
  • R24-11rel:R24-11#7af5dd2e2026-10-14
  • R25-11rel:R25-11#5186dad52026-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

función operator= [SWS_CORE_06225] Upstream: RS_AP_00130

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

Move assign from another instance. This function shall behave the same as the corresponding std::future function.

Header-Datei#include "ara/core/future.h"
Scopeclass ara::core::Future< void, E >
Exception-Sicherheitexception safe
Thread-Sicherheitnot thread-safe

Parameter (in)

ParameterBeschreibung
otherthe other instance

Rückgabewert

TypBeschreibung
Future &*this

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

Record
AUTOSAR/AP/record/SWS_CORE_06225
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CORE_06225@rel:R25-11#b0fd11cd
Content hash
b0fd11cd
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Core.pdf#nameddest=SWS_CORE_06225
Status: valid/unmigrated Version: rel:R25-11#9232ee22 Versionshistorie & Revisions (1 transition, 8 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_06225@rel:R25-11#9232ee22
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#354308df2026-09-30
  • R19-11rel:R19-11#7ddd3a9d2026-10-14
  • R20-11rel:R20-11#309f3c9c2026-10-14
  • R21-11rel:R21-11#8d4849c42026-10-14
  • R22-11rel:R22-11#9833c73f2026-10-14
  • R23-11rel:R23-11#b37e21992026-10-14
  • R24-11rel:R24-11#9232ee222026-10-14
  • R25-11rel:R25-11#9232ee222026-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

función operator= [SWS_CORE_06235] Upstream: RS_AP_00130

Future & operator= (const Future &other)=delete;

Copy assignment operator shall be disabled

Header-Datei#include "ara/core/future.h"
Scopeclass ara::core::Future< void, E >

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

Record
AUTOSAR/AP/record/SWS_CORE_06235
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CORE_06235@rel:R25-11#3f02e8ae
Content hash
3f02e8ae
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Core.pdf#nameddest=SWS_CORE_06235
Status: valid/unmigrated Version: rel:R25-11#2ab3479c Versionshistorie & Revisions (1 transition, 8 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_06235@rel:R25-11#2ab3479c
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#7aa2f7952026-09-30
  • R19-11rel:R19-11#e583d7bd2026-10-14
  • R20-11rel:R20-11#d21de51e2026-10-14
  • R21-11rel:R21-11#d21de51e2026-10-14
  • R22-11rel:R22-11#31fde6ef2026-10-14
  • R23-11rel:R23-11#de56c2ed2026-10-14
  • R24-11rel:R24-11#fd4c55142026-10-14
  • R25-11rel:R25-11#2ab3479c2026-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

función then [SWS_CORE_06231] Upstream: RS_AP_00130

template <typename F> auto then (F &&func) noexcept -> Future< <see below> >;

Create a new Future with the content returned by func when passed the Result of this Future. func may be called in the context of this call or in the context of Promise::set_value() or Promise::SetError() or somewhere else. valid() == false on the original future object immediately after it returns. The Callable input argument "func" takes a Result<void,E> object as parameter. This will be the Result obtained via GetResult from the Future instance itself, on which .then() is being called. The Result is passed to func as an rvalue expression. The return type of then depends on the return type of func (aka continuation). Let U be the return type of the continuation (i.e. a type equivalent to std::invoke_result_ t<std::decay_t<F>,Result<void,E>>). • If U is Future<T2,E2> for some types T2, E2, then the return type of then() is Future<T2,E2>. This is known as implicit Future unwrapping. • If U is Result<T2,E2> for some types T2, E2, then the return type of then() is Future<T2,E2>. This is known as implicit Result unwrapping. • Otherwise it is Future<U,E>. Continuations that are registered with Future::then() are registered in the Future F that Future::then() returns. No such continuation shall be executed after the destructor of the Future F returns. A continuation that is already being executed shall run to completion. Note: that means that the destructor of Future might block until the currently running continuation has been completed. The continuation shall not throw, except for the purpose of implementing a Violation. Note: Exceptions can be used within the continuation, however if they do not realize a Violation, they must not escape the continuation. Note: Users who need to propagate information from closures’ exceptions should translate them to an error and return an ara::core::Result or ara::core::Future from the continuation with the error stored in it.

GENERADO POR IA no revisado Modelo: gemini-3.8-flash-medium · Esfuerzo: medium · Temperatura: no controlable · Prompt: 161f9bad96ab Procedencia
traducido de la guía alemanagemini-3.8-flash-low · 2026-10-13 · Original en alemán

usar

El método then registra una operación de continuación (continuation func) en una instancia de ara::core::Future<void, E> [SWS_CORE_06231]. El objeto invocable recibe el resultado de la operación como una expresión rvalue del tipo Result<void, E>, el cual se proporciona internamente a través de GetResult [SWS_CORE_06231]. La llamada a func puede tener lugar de forma síncrona en el contexto de then o de forma asíncrona en el contexto de Promise::set_value(), Promise::SetError() o en otro punto [SWS_CORE_06231].

Inmediatamente después del retorno de then, el Future original no es válido (valid() == false) [SWS_CORE_06231]. El tipo de retorno se adapta al tipo de retorno U de la continuación:

  • Si func devuelve un Future<T2, E2>, se produce un desempaquetado implícito y then devuelve Future<T2, E2> [SWS_CORE_06231].
  • Si func devuelve un Result<T2, E2>, este también se desempaqueta implícitamente a Future<T2, E2> [SWS_CORE_06231].
  • En todos los demás casos, el tipo de retorno es Future<U, E> [SWS_CORE_06231].

Tratamiento de errores y condiciones límite

No se especifican códigos de error estandarizados para esta función [SWS_CORE_06231]. El método está declarado como noexcept, pero define dos violaciones (violations):

  • FutureInvalidViolation: Se produce si el método se invoca en un Future no válido (si valid() devuelve false) [SWS_CORE_06231].
  • FutureContinuationHasThrownViolation: Se produce si la continuación lanza una excepción que no implementa ninguna violation [SWS_CORE_06231]. En su lugar, los errores en la continuación deben devolverse empaquetados en un Result o Future [SWS_CORE_06231].

Concurrencia e interacción

El método no es seguro para hilos (not thread-safe) [SWS_CORE_06231]. Tras el retorno del destructor del Future devuelto ya no se ejecuta ninguna continuación registrada; sin embargo, una ejecución que ya esté en curso se completa, de modo que el destructor puede bloquear [SWS_CORE_06231]. Mientras que [SWS_CORE_06231] se aplica a Future<void, E>, [SWS_CORE_00331] describe la variante para Futures tipados Future<T, E> y [SWS_CORE_06237] la sobrecarga con ejecutor explícito.

Este texto ha sido generado por una IA a partir de la especificación de AUTOSAR.

Header-Datei#include "ara/core/future.h"
Scopeclass ara::core::Future< void, E >
Exception-Sicherheitexception safe
Thread-Sicherheitnot thread-safe
Verletzungen (Violations)FutureInvalidVio- If the Future is invalid (valid returns false) lation FutureContinua- If the continuation throws an exception tionHasThrownVio- lation

Parameter (in)

ParameterBeschreibung
funca callable to register

Rückgabewert

TypBeschreibung
Future< <see below> >a new Future instance for the result of the continuation

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_06231
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CORE_06231@rel:R25-11#492c8128
Content hash
492c8128
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Core.pdf#nameddest=SWS_CORE_06231
Status: valid/unmigrated Version: rel:R25-11#21619af0 Versionshistorie & Revisions (1 transition, 8 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_06231@rel:R25-11#21619af0
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#9e67efce2026-09-30
  • R19-11rel:R19-11#b5665d0f2026-10-14
  • R20-11rel:R20-11#0cd22f812026-10-14
  • R21-11rel:R21-11#f603398f2026-10-14
  • R22-11rel:R22-11#b27b86212026-10-14
  • R23-11rel:R23-11#2173d0cf2026-10-14
  • R24-11rel:R24-11#273db5c82026-10-14
  • R25-11rel:R25-11#21619af02026-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

función then [SWS_CORE_06237] Upstream: RS_AP_00130

template <typename F, typename ExecutorT> auto then (F &&func, ExecutorT &&executor) noexcept -> Future< <see below> >;

Create a new Future with the content returned by func when passed the Result of this Future. func is called in the context of the provided execution context executor. valid() == false on the original future object immediately after it returns. The Callable input argument "func" takes a Result<void,E> object as parameter. This will be the Result obtained via GetResult from the Future instance itself, on which .then() is being called. The Result is passed to func as an rvalue expression. The return type of then depends on the return type of func (aka continuation). Let U be the return type of the continuation (i.e. a type equivalent to std::invoke_result_ t<std::decay_t<F>,Result<void,E>>). • If U is Future<T2,E2> for some types T2, E2, then the return type of then() is Future<T2,E2>. This is known as implicit Future unwrapping. • If U is Result<T2,E2> for some types T2, E2, then the return type of then() is Future<T2,E2>. This is known as implicit Result unwrapping. • Otherwise it is Future<U,E>. Continuations that are registered with Future::then() are registered in the Future F that Future::then() returns. No such continuation shall be executed after the destructor of the Future F returns. A continuation that is already being executed shall run to completion. Note: that means that the destructor of Future might block until the currently running continuation has been completed. The continuation shall not throw, except for the purpose of implementing a Violation. Note: Exceptions can be used within the continuation, however if they do not realize a Violation, they must not escape the continuation. Note: Users who need to propagate information from closures’ exceptions should translate them to an error and return an ara::core::Result or ara::core::Future from the continuation with the error stored in it.

GENERADO POR IA no revisado Modelo: gemini-3.8-flash-medium · Esfuerzo: medium · Temperatura: no controlable · Prompt: 96d3b0e93b60 Procedencia
traducido de la guía alemanagemini-3.8-flash-low · 2026-10-13 · Original en alemán

La función then registra un objeto invocable de continuación (continuation) func en una instancia de ara::core::Future<void, E> para su ejecución en el contexto de ejecución indicado executor [SWS_CORE_06237]. Inmediatamente después del retorno de then, la instancia de future llamadora pierde su validez, de modo que es valid() == false [SWS_CORE_06237]. La continuación recibe el resultado de la instancia de future original pasado como Result<void, E> en forma de expresión rvalue [SWS_CORE_06237]. Como valor de retorno, la llamada proporciona una nueva instancia de Future, donde los tipos de retorno de la continuación de tipo Future<T2, E2> o Result<T2, E2> se desempaquetan implícitamente a Future<T2, E2>; de lo contrario, se devuelve un Future<U, E> [SWS_CORE_06237].

En relación con la concurrencia y el ciclo de vida, la función está especificada como no segura para subprocesos (not thread-safe) [SWS_CORE_06237]. La continuación se registra en el nuevo future devuelto. Tras el retorno del destructor de este nuevo future, ya no se podrá ejecutar ninguna continuación; no obstante, una continuación que ya esté en ejecución se completará en su totalidad, por lo que el destructor del future puede bloquearse [SWS_CORE_06237].

La función no declara códigos de error estandarizados y está definida como noexcept [SWS_CORE_06237]. Si se invoca sobre una instancia de future no válida, se produce la violación FutureInvalidViolation [SWS_CORE_06237]. En caso de que la continuación lance una excepción, esto da lugar a la violación FutureContinuationHasThrownViolation [SWS_CORE_06237]. Las excepciones no deben salir de la continuación, sino que, si es necesario, deben traducirse en valores de error y devolverse dentro de un Result o Future [SWS_CORE_06237]. La función complementa la variante sin ejecutor [SWS_CORE_06231] y constituye la contraparte de las sobrecargas con valor [SWS_CORE_00331] y [SWS_CORE_00337].

Esta nota de uso ha sido elaborada por una IA y se basa en la especificación AUTOSAR R25-11.

Header-Datei#include "ara/core/future.h"
Scopeclass ara::core::Future< void, E >
Exception-Sicherheitexception safe
Thread-Sicherheitnot thread-safe
Verletzungen (Violations)FutureInvalidVio- If the Future is invalid (valid returns false) lation FutureContinua- If the continuation throws an exception. tionHasThrownVio- lation

Template-Parameter

ParameterBeschreibung
FExecutorTthe type of the func argument the type of the executor argument

Parameter (in)

ParameterBeschreibung
funca callable to register
executorthe execution context in which to execute the Callable func

Rückgabewert

TypBeschreibung
Future< <see below> >a new Future instance for the result of the continuation

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_06237
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CORE_06237@rel:R25-11#76b0107b
Content hash
76b0107b
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Core.pdf#nameddest=SWS_CORE_06237
Status: valid/unmigrated Version: rel:R25-11#58e4cf50 Versionshistorie & Revisions (1 transition, 7 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_06237@rel:R25-11#58e4cf50
Point-in-Time History:
Recorded Revisions (7):
  • R25-11rel:R25-11#e39189402026-09-30
  • R20-11rel:R20-11#5e1b7f5b2026-10-14
  • R21-11rel:R21-11#1e3cbb002026-10-14
  • R22-11rel:R22-11#e2d3ef1a2026-10-14
  • R23-11rel:R23-11#8b2f870e2026-10-14
  • R24-11rel:R24-11#27088c392026-10-14
  • R25-11rel:R25-11#58e4cf502026-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

función valid [SWS_CORE_06227] Upstream: RS_AP_00130

bool valid () const noexcept;

Checks if the Future is valid, i.e. if it has a shared state.

This function shall behave the same as the corresponding std::future function.

GENERADO POR IA no revisado Modelo: gemini-3.8-flash-medium · Esfuerzo: medium · Temperatura: no controlable · Prompt: 480112e5c811 Procedencia
traducido de la guía alemanagemini-3.8-flash-low · 2026-10-13 · Original en alemán

La función valid() comprueba de forma síncrona si la instancia de ara::core::Future<void, E> posee un estado compartido (Shared State) y, por tanto, es utilizable [SWS_CORE_06227]. Se comporta según la especificación de manera análoga a la función correspondiente de std::future [SWS_CORE_06227]. Como valor de retorno, devuelve true si el future es utilizable, y false si no es utilizable [SWS_CORE_06227].

En cuanto a la concurrencia y el tratamiento de errores, el método está declarado como noexcept, seguro frente a excepciones (exception safe) y explícitamente especificado como seguro para subprocesos (thread-safe) [SWS_CORE_06227]. Por lo tanto, puede invocarse de manera segura desde contextos concurrentes.

En combinación con otras operaciones, valid() sirve para salvaguardar el ciclo de vida:

  • Si en un objeto future no válido (valid() == false) se invoca una operación como wait() [SWS_CORE_06228] o is_ready() [SWS_CORE_00332], esto desencadena la infracción FutureInvalidViolation.
  • Las operaciones consumidoras invalidan el objeto: tras una llamada a get(), el future ya no es válido, por lo que las comprobaciones posteriores con valid() devuelven el valor false [SWS_CORE_06226].
  • Del mismo modo, los reenvíos mediante then() [SWS_CORE_00331] o las llamadas a GetResult() [SWS_CORE_00336] hacen que el objeto future original se invalide de inmediato.

Esta nota de uso ha sido generada por una IA sobre la base de la especificación.

Guía del implementador pendiente (complejidad I1)

Header-Datei#include "ara/core/future.h"
Scopeclass ara::core::Future< void, E >
Exception-Sicherheitexception safe
Thread-Sicherheitthread-safe

Rückgabewert

TypBeschreibung
bool• TRUE: the Future is usable • FALSE: the Future is NOT usable

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

Record
AUTOSAR/AP/record/SWS_CORE_06227
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CORE_06227@rel:R25-11#acd2219c
Content hash
acd2219c
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Core.pdf#nameddest=SWS_CORE_06227
Status: valid/unmigrated Version: rel:R25-11#d38a60b4 Versionshistorie & Revisions (1 transition, 8 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_06227@rel:R25-11#d38a60b4
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#285420912026-09-30
  • R19-11rel:R19-11#2199fb4c2026-10-14
  • R20-11rel:R20-11#7a68b03e2026-10-14
  • R21-11rel:R21-11#a46ad2562026-10-14
  • R22-11rel:R22-11#6bc04f322026-10-14
  • R23-11rel:R23-11#bd2577342026-10-14
  • R24-11rel:R24-11#2f9de2d02026-10-14
  • R25-11rel:R25-11#d38a60b42026-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

función wait [SWS_CORE_06228] Upstream: RS_AP_00130

void wait () const noexcept;

Wait for a value or an error to be available. This function shall behave the same as the corresponding std::future function

GENERADO POR IA no revisado Modelo: gemini-3.8-flash-medium · Esfuerzo: medium · Temperatura: no controlable · Prompt: 2f9ee5ecd1d4 Procedencia Preguntas abiertas (1)
traducido de la guía alemanagemini-3.8-flash-low · 2026-10-13 · Original en alemán

La función miembro wait de la especialización ara::core::Future<void, E> bloquea el hilo llamante de forma síncrona hasta que el resultado de la operación asíncrona esté disponible en forma de un valor o de un error [SWS_CORE_06228]. La función no toma parámetros, no devuelve ningún valor de retorno (void) y, conforme a la especificación, se comporta como la función correspondiente de std::future [SWS_CORE_06228].

Con respecto al tratamiento de errores y las condiciones de contorno se aplican los siguientes requisitos:

  • Seguridad frente a excepciones y tratamiento de errores: La operación está declarada con noexcept y especificada como segura frente a excepciones (exception safe) [SWS_CORE_06228]. Si valid() devuelve para la instancia de Future false, se produce la violación FutureInvalidViolation [SWS_CORE_06228]. Es de esperar que la consecuencia concreta de esta violación esté implementada como un tratamiento de errores específico del sistema del entorno de ejecución de AUTOSAR. Pregunta Q-469e9abc947b9869 (abierta)
  • Concurrencia: La función está clasificada como no segura para hilos (not thread-safe) [SWS_CORE_06228]. Por tanto, no se permite el acceso concurrente al mismo objeto Future sin sincronización externa.

En interacción con las demás funciones del módulo core existen las siguientes posibilidades:

  • Con el método seguro para hilos is_ready se puede consultar de antemano si la operación ha finalizado; si se devuelve true, se garantiza que wait ya no bloqueará [SWS_CORE_06232].
  • Para evitar un bloqueo indefinido están disponibles las funciones con límite de tiempo wait_for con una duración relativa [SWS_CORE_06229], así como wait_until con un punto temporal absoluto [SWS_CORE_06230].
  • Para la clase plantilla primaria ara::core::Future se aplican los mismos requisitos de espera síncrona y restricciones [SWS_CORE_00328].

Este texto ha sido seleccionado por un sistema de IA y se basa exclusivamente en la especificación AUTOSAR.

Header-Datei#include "ara/core/future.h"
Scopeclass ara::core::Future< void, E >
Exception-Sicherheitexception safe
Thread-Sicherheitnot thread-safe
Verletzungen (Violations)FutureInvalidVio- If the Future is invalid (valid returns false) lation

Rückgabewert

TypBeschreibung
None

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

Record
AUTOSAR/AP/record/SWS_CORE_06228
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CORE_06228@rel:R25-11#5e5545d0
Content hash
5e5545d0
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Core.pdf#nameddest=SWS_CORE_06228
Status: valid/unmigrated Version: rel:R25-11#24670f02 Versionshistorie & Revisions (1 transition, 8 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_06228@rel:R25-11#24670f02
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#a06c2ef52026-09-30
  • R19-11rel:R19-11#4b7a7a422026-10-14
  • R20-11rel:R20-11#457c63ae2026-10-14
  • R21-11rel:R21-11#6b136de32026-10-14
  • R22-11rel:R22-11#3d7c381b2026-10-14
  • R23-11rel:R23-11#d02a0b222026-10-14
  • R24-11rel:R24-11#a383ce752026-10-14
  • R25-11rel:R25-11#24670f022026-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

función wait_for [SWS_CORE_06229] Upstream: RS_AP_00130

template <typename Rep, typename Period> FutureStatus wait_for (const std::chrono::duration< Rep, Period > &timeoutDuration) const noexcept;

Wait for the given period, or until a value or an error is available. This function shall behave the same as the corresponding std::future function

GENERADO POR IA no revisado Modelo: gemini-3.8-flash-medium · Esfuerzo: medium · Temperatura: no controlable · Prompt: 927a98d78cf3 Procedencia Preguntas abiertas (1)
traducido de la guía alemanagemini-3.8-flash-low · 2026-10-13 · Original en alemán

El método wait_for de la especialización ara::core::Future<void, E> bloquea el subproceso llamador de forma síncrona durante un periodo de tiempo máximo timeoutDuration o hasta que el resultado esté disponible [SWS_CORE_06229]. Se comporta semánticamente como la función estándar correspondiente std::future::wait_for [SWS_CORE_06229].

Como valor de retorno, la función proporciona el estado FutureStatus [SWS_CORE_06229]. Este señala con FutureStatus::kReady que un valor o un error está disponible, o bien con FutureStatus::kTimeout que el plazo ha expirado sin resultado [SWS_CORE_00361]. No se prevé un estado equivalente a std::future_status::deferred [SWS_CORE_00361]. El comportamiento se corresponde con la interfaz general de futuros [SWS_CORE_00329].

Para la llamada se aplican las siguientes condiciones respecto a la concurrencia y al tratamiento de errores:

  • Concurrencia: la función está especificada como no segura para subprocesos (not thread-safe) [SWS_CORE_06229]. Las llamadas simultáneas sobre la misma instancia deben protegerse por parte del llamador.
  • Casos de error y seguridad frente a excepciones: la operación está declarada como segura frente a excepciones (exception safe), así como noexcept [SWS_CORE_06229]. Si el objeto Future no es válido (valid() devuelve false), se produce una FutureInvalidViolation [SWS_CORE_06229]. Debido a la declaración noexcept, es de suponer que esta violación conducirá a la finalización inmediata del programa. Pregunta Q-4f01aa6e7fbfb12d (abierta)

Esta nota de uso se ha generado de forma automatizada sobre la base de la especificación de AUTOSAR Adaptive R25-11.

Guía del implementador pendiente (complejidad I1)

Header-Datei#include "ara/core/future.h"
Scopeclass ara::core::Future< void, E >
Exception-Sicherheitexception safe
Thread-Sicherheitnot thread-safe
Verletzungen (Violations)FutureInvalidVio- If the Future is invalid (valid returns false) lation

Parameter (in)

ParameterBeschreibung
timeoutDurationmaximal duration to wait for

Rückgabewert

TypBeschreibung
FutureStatusstatus that indicates whether the timeout hit or if a value is available

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

Record
AUTOSAR/AP/record/SWS_CORE_06229
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CORE_06229@rel:R25-11#77b552af
Content hash
77b552af
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Core.pdf#nameddest=SWS_CORE_06229
Status: valid/unmigrated Version: rel:R25-11#cde767bb Versionshistorie & Revisions (1 transition, 8 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_06229@rel:R25-11#cde767bb
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#414f595f2026-09-30
  • R19-11rel:R19-11#8d512e042026-10-14
  • R20-11rel:R20-11#f89ce5282026-10-14
  • R21-11rel:R21-11#f89ce5282026-10-14
  • R22-11rel:R22-11#68d81b0f2026-10-14
  • R23-11rel:R23-11#534174642026-10-14
  • R24-11rel:R24-11#38872d6e2026-10-14
  • R25-11rel:R25-11#cde767bb2026-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

función wait_until [SWS_CORE_06230] Upstream: RS_AP_00130

template <typename Clock, typename Duration> FutureStatus wait_until (const std::chrono::time_point< Clock, Duration > &deadline) const noexcept;

Wait until the given time, or until a value or an error is available. This function shall behave the same as the corresponding std::future function.

GENERADO POR IA no revisado Modelo: gemini-3.8-flash-medium · Esfuerzo: medium · Temperatura: no controlable · Prompt: 932b0d674f17 Procedencia
traducido de la guía alemanagemini-3.8-flash-low · 2026-10-13 · Original en alemán

La función miembro wait_until de la especialización ara::core::Future<void, E> bloquea el subproceso llamador hasta que se alcance el momento absoluto especificado deadline o hasta que haya disponible un valor o un error [SWS_CORE_06230]. La función muestra el mismo comportamiento que la correspondiente función estándar de C++ std::future::wait_until [SWS_CORE_06230] y posee la misma semántica que la sobrecarga genérica para ara::core::Future [SWS_CORE_00330].

El valor de retorno de tipo FutureStatus indica si se ha alcanzado el plazo o si hay un valor disponible [SWS_CORE_06230]. En este contexto, el estado kReady indica que el estado compartido está listo, mientras que kTimeout significa que el estado compartido no estuvo listo antes de que venciera el plazo [SWS_CORE_00361]. En FutureStatus no existe un estado análogo a std::future_status::deferred [SWS_CORE_00361].

En lo que respecta a la ejecución y a las condiciones límite, se definen las siguientes especificaciones:

  • Contexto de llamada y comportamiento ante excepciones: la función está disponible a través del archivo de cabecera #include "ara/core/future.h", declarada como noexcept y especificada como segura frente a excepciones (exception safe) [SWS_CORE_06230].
  • Estados de error: si el future no es válido, es decir, si valid() devuelve el valor false, se produce la violación FutureInvalidViolation [SWS_CORE_06230].
  • Concurrencia: la operación está clasificada como no segura para subprocesos (not thread-safe) [SWS_CORE_06230].

Esta nota de uso se ha generado automáticamente a partir de la especificación de AUTOSAR Adaptive R25-11.

Guía del implementador pendiente (complejidad I1)

Header-Datei#include "ara/core/future.h"
Scopeclass ara::core::Future< void, E >
Exception-Sicherheitexception safe
Thread-Sicherheitnot thread-safe
Verletzungen (Violations)FutureInvalidVio- If the Future is invalid (valid returns false) lation

Parameter (in)

ParameterBeschreibung
deadlinelatest point in time to wait

Rückgabewert

TypBeschreibung
FutureStatusstatus that indicates whether the time was reached or if a value is available

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

Record
AUTOSAR/AP/record/SWS_CORE_06230
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CORE_06230@rel:R25-11#350df1d3
Content hash
350df1d3
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Core.pdf#nameddest=SWS_CORE_06230
Status: valid/unmigrated Version: rel:R25-11#f458c628 Versionshistorie & Revisions (1 transition, 8 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_06230@rel:R25-11#f458c628
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#eec83ed82026-09-30
  • R19-11rel:R19-11#73333c762026-10-14
  • R20-11rel:R20-11#291da1182026-10-14
  • R21-11rel:R21-11#cb6c719b2026-10-14
  • R22-11rel:R22-11#31de44c72026-10-14
  • R23-11rel:R23-11#944875602026-10-14
  • R24-11rel:R24-11#85fe57402026-10-14
  • R25-11rel:R25-11#f458c6282026-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

función ~Future [SWS_CORE_06233] Upstream: RS_AP_00130

~Future () noexcept;

Destructor for Future objects. Abandons any shared state

Header-Datei#include "ara/core/future.h"
Scopeclass ara::core::Future< void, E >
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_06233
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CORE_06233@rel:R25-11#d3b7dd85
Content hash
d3b7dd85
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Core.pdf#nameddest=SWS_CORE_06233
Status: valid/unmigrated Version: rel:R25-11#7ce4899e Versionshistorie & Revisions (1 transition, 8 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_06233@rel:R25-11#7ce4899e
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#32a6e0a42026-09-30
  • R19-11rel:R19-11#e8e5d2942026-10-14
  • R20-11rel:R20-11#feb4e8682026-10-14
  • R21-11rel:R21-11#a081de932026-10-14
  • R22-11rel:R22-11#40dcc5802026-10-14
  • R23-11rel:R23-11#8b89d85f2026-10-14
  • R24-11rel:R24-11#25b460852026-10-14
  • R25-11rel:R25-11#7ce4899e2026-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