DEENESPTFRRUARHIKOZHNL

clase ara::core::SynchronizedPoolResource

[SWS_CORE_00029] Upstream: RS_AP_00130

class SynchronizedPoolResource :           public MemoryResource {...};

Implementation of std::pmr::synchronized_pool_resource from [mem.res.pool]

Header-Datei#include "ara/core/memory_resource.h"
Forwarding-Header#include "ara/core/core_fwd.h"
Scopenamespace ara::core
Basisklasse(n)MemoryResource

Guía del usuarioGENERADO POR IA

Proporciona un recurso de memoria de tipo pool seguro para subprocesos para la asignación y liberación eficientes de bloques de memoria.
GENERADO POR IA no revisado Modelo: gemini-3.8-flash-medium · Esfuerzo: medium · Temperatura: no controlable · Prompt: 8c6c1308f3f6 Procedencia Preguntas abiertas (3)
traducido de la guía alemanagemini-3.8-flash-low · 2026-10-13 · Original en alemán

Proporciona un recurso de memoria de tipo pool seguro para subprocesos para la asignación y liberación eficientes de bloques de memoria.

La clase ara::core::SynchronizedPoolResource proporciona un recurso de memoria seguro para subprocesos que gestiona asignaciones a través de pools internos y solicita memoria adicional de un recurso ascendente (upstream) de nivel superior ([SWS_CORE_00030]). A diferencia del estándar de C++, la asignación de memoria no lanza excepciones en caso de fallo, sino que devuelve nullptr en su lugar ([SWS_CORE_00061]). Las operaciones de copia están completamente deshabilitadas, mientras que las operaciones de movimiento se admiten de forma explícita. Además, el destructor no es virtual, por lo que las instancias no deben liberarse de forma polimórfica mediante un puntero a la clase base.

Contexto

La clase ara::core::SynchronizedPoolResource proporciona un recurso de memoria seguro para subprocesos para la AUTOSAR Adaptive Platform dentro del módulo core. Se basa en el concepto de std::pmr::synchronized_pool_resource conforme al estándar C++ [mem.res.pool] y deriva públicamente de la clase base MemoryResource. Su tarea principal consiste en administrar bloques de memoria a través de pools internos según clases de tamaño, para llevar a cabo asignaciones recurrentes de manera eficiente y concurrente. Si la reserva interna no es suficiente, la instancia obtiene bloques de memoria mayores de un recurso de memoria ascendente (upstream) de nivel superior ([SWS_CORE_00038]).

Entre los interlocutores típicos se encuentran subprocesos concurrentes de una aplicación que solicitan asignaciones, el SynchronizedPoolResource como administrador de pool mediador y una MemoryResource subyacente como fuente ascendente (upstream). Todas las funciones centrales de acceso y administración como do_allocate, do_deallocate, options y release están diseñadas para ser seguras para subprocesos ([SWS_CORE_00061], [SWS_CORE_00041], [SWS_CORE_00039], [SWS_CORE_00037]).

SynchronizedPoolResourceKontext Client Aufrufende Threads Pool ara::core::SynchronizedPoolResource Client->Pool Zuteilung / Freigabe Upstream Upstream MemoryResource Pool->Upstream Chunk-Allokation / release()

Diagrama de contexto: Interacción entre subprocesos de aplicación concurrentes, el recurso de tipo pool y la fuente de memoria ascendente. Fuentes: [SWS_CORE_00030], [SWS_CORE_00038].

Ciclo de vida

La instanciación de SynchronizedPoolResource puede realizarse mediante varias sobrecargas de constructores. Si se dispone tanto de opciones de asignación (PoolOptions) como de un recurso ascendente (upstream), la inicialización garantiza una seguridad total frente a excepciones y está declarada como noexcept ([SWS_CORE_00030]). Además, existen constructores sin parámetros ([SWS_CORE_00031]), con un único puntero de upstream ([SWS_CORE_00032]) o únicamente con opciones de pool ([SWS_CORE_00033]). Interpretación: Si no se pasa ningún puntero de upstream, es probable que la implementación recurra a un recurso de memoria estándar específico de la plataforma. Pregunta Q-5dafb414672249dc (abierta)

En lo que respecta a las relaciones de propiedad, la clase excluye estrictamente la copia: tanto el constructor de copia ([SWS_CORE_00034]) como el operador de asignación por copia ([SWS_CORE_00036]) están eliminados (=delete). Sin embargo, a diferencia del estándar ISO-C++17, AUTOSAR define explícitamente semántica de movimiento para esta clase: un constructor de movimiento ([SWS_CORE_00043]) y un operador de asignación por movimiento ([SWS_CORE_00044]) están disponibles, en cada caso, como noexcept=default.

Un aspecto central de la destrucción es la divergencia respecto al comportamiento estándar: el destructor ~SynchronizedPoolResource() es explícitamente no virtual ([SWS_CORE_00035]). Interpretación: Dado que el destructor no es virtual, es probable que una destrucción polimórfica a través de un puntero de la clase base MemoryResource* provoque un comportamiento indefinido; por lo tanto, las instancias siempre deben destruirse a través de su tipo concreto. Pregunta Q-5add73880279b024 (abierta) Además, con la invocación de release() se puede devolver toda la memoria asignada al recurso ascendente (upstream) mientras el objeto de recurso permanece intacto ([SWS_CORE_00037]).

Ruta de uso

El flujo típico abarca la inicialización, la asignación y liberación repetidas de bloques de memoria, así como la limpieza final:

  1. Inicialización: La aplicación crea la instancia especificando parámetros de configuración y un recurso de memoria de nivel superior ([SWS_CORE_00030]). Los ajustes activos pueden consultarse mediante options() ([SWS_CORE_00039]), y el puntero de upstream a través de upstream_resource() ([SWS_CORE_00038]).
  2. Asignación de memoria: Las solicitudes de memoria se procesan de manera protegida a través de do_allocate ([SWS_CORE_00061]). Interpretación: La llamada en el código de aplicación no se realiza habitualmente de forma directa a través del método protegido do_allocate, sino mediante la interfaz pública heredada allocate de la clase base MemoryResource. Pregunta Q-1542a47cdff73dfb (abierta)
  3. Comprobación de identidad: A través de do_is_equal se puede determinar si dos recursos de memoria son equivalentes entre sí ([SWS_CORE_00042]).
  4. Liberación: Las áreas de memoria individuales se devuelven al pool a través de do_deallocate ([SWS_CORE_00041]). Si es necesario, toda la memoria de todos los pools puede devolverse de forma conjunta al recurso ascendente (upstream) mediante release() ([SWS_CORE_00037]).
Flujo de uso de SynchronizedPoolResourceAplicaciónSynchronizedPoolResourceUpstreamResourceUse Case: InitialisierungSynchronizedPoolResource(opts, &upstream)Use Case: Allokationdo_allocate(bytes, alignment)optPool agotado / fragmento (chunk) requeridoSpeicher anfordernSpeicherbereichSpeicherzeiger / nullptrUse Case: Liberación y limpiezado_deallocate(p, bytes, alignment)release()Devolver memoria a upstream

Diagrama de secuencia: secuencia típica de inicialización, solicitud de memoria, liberación y limpieza mediante recursos upstream. Fuentes: [SWS_CORE_00030], [SWS_CORE_00061], [SWS_CORE_00041], [SWS_CORE_00037].

Escenarios de error

La AUTOSAR Adaptive Platform se desvía deliberadamente de las convenciones de excepciones del estándar C++ en el tratamiento de errores:

  • Errores de asignación: mientras que ISO-C++ prevé el lanzamiento de std::bad_alloc en caso de agotamiento, do_allocate está definido en AUTOSAR como noexcept. Si no se puede proporcionar un bloque de memoria adecuado, el método devuelve obligatoriamente en su lugar un puntero nulo (nullptr) ([SWS_CORE_00061]). Por lo tanto, los llamadores deben comprobar cada valor de retorno de asignación respecto a nullptr.
  • Errores de desasignación: el método do_deallocate es igualmente noexcept. Si se produce un error al devolver un bloque de memoria, según la especificación este se ignora silenciosamente ([SWS_CORE_00041]).
  • Riesgos de construcción: mientras que el constructor con opciones y recurso upstream es seguro frente a excepciones ([SWS_CORE_00030]), los constructores sin indicación de upstream o sin opciones están clasificados como no seguros frente a excepciones («not exception safe») ([SWS_CORE_00031], [SWS_CORE_00032], [SWS_CORE_00033]). Interpretación: si en estos constructores falla la provisión interna de estructuras de administración del pool, la creación del objeto puede fallar. Pregunta (abierta)

Esta guía de clases resume la especificación de ara::core::SynchronizedPoolResource para AUTOSAR Adaptive Release R25-11.

Mapa de miembros

Diagrama de clases

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

G nara__core__SynchronizedPoolResource481 SynchronizedPoolResource + SynchronizedPoolResource() + operator=() + ~SynchronizedPoolResource() + options() + release() + upstream_resource() + do_allocate() + do_deallocate() + do_is_equal() nara__core__MemoryResource130 MemoryResource nara__core__SynchronizedPoolResource481->nara__core__MemoryResource130

Vista de detalle

Selecciona una entrada en el índice.

Constructores y destructor

≙ [mem.res.pool]

Sobrecargas SynchronizedPoolResource 6
SynchronizedPoolResource (const PoolOptions &opts, MemoryResource *upstream) noexcept; SWS_CORE_00030
SynchronizedPoolResource (); SWS_CORE_00031
explicit SynchronizedPoolResource (MemoryResource *upstream); SWS_CORE_00032
explicit SynchronizedPoolResource (const PoolOptions &opts); SWS_CORE_00033
SynchronizedPoolResource (const SynchronizedPoolResource &)=delete; SWS_CORE_00034
SynchronizedPoolResource (SynchronizedPoolResource &&other) noexcept=default; SWS_CORE_00043

except for the following deviations: 1. The function is not virtual ≙ [mem.res.pool]

~SynchronizedPoolResource () noexcept override;

Métodos

do_allocate función

except for the following deviations: 1. The function is noexcept 2. The function returns nullptr instead of (potentially) throwing a std::bad_alloc exception ≙ std::bad_alloc

void * do_allocate (std::size_t bytes, std::size_t alignment) noexcept override;
do_deallocate función

except for the following deviations: 1. The function is noexcept 2. If unsuccessful: errors will be silently ignored ≙ [mem.res.pool]

void do_deallocate (void *p, std::size_t bytes, std::size_t alignment) noexcept override;
do_is_equal función

≙ [mem.res.pool]

bool do_is_equal (const MemoryResource &other) const noexcept override;
options función

≙ [mem.res.pool]

PoolOptions options () const noexcept;
release función

≙ [mem.res.pool]

void release () noexcept;

≙ [mem.res.pool]

MemoryResource * upstream_resource () const noexcept;

Operadores

operator= función 2

≙ [mem.res.pool]

Sobrecargas = 2

Documentación de los métodos

función SynchronizedPoolResource [SWS_CORE_00030]

SynchronizedPoolResource (const PoolOptions &opts, MemoryResource *upstream) noexcept;

As per corresponding usage in [mem.res.pool]

Header-Datei#include "ara/core/memory_resource.h"
Scopeclass ara::core::SynchronizedPoolResource
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_00030
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CORE_00030@rel:R25-11#282c8e8d
Content hash
282c8e8d
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Core.pdf#nameddest=SWS_CORE_00030
Status: valid/unmigrated Version: rel:R25-11#1501c053 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_00030@rel:R25-11#1501c053
Point-in-Time History:
Recorded Revisions (3):
  • R25-11rel:R25-11#f8089aa92026-09-30
  • R24-11rel:R24-11#faeb22342026-10-14
  • R25-11rel:R25-11#1501c0532026-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 SynchronizedPoolResource [SWS_CORE_00031]

SynchronizedPoolResource ();

As per corresponding usage in [mem.res.pool]

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

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

Record
AUTOSAR/AP/record/SWS_CORE_00031
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CORE_00031@rel:R25-11#bb96ddd0
Content hash
bb96ddd0
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Core.pdf#nameddest=SWS_CORE_00031
Status: valid/unmigrated Version: rel:R25-11#63c60a5b 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_00031@rel:R25-11#63c60a5b
Point-in-Time History:
Recorded Revisions (3):
  • R25-11rel:R25-11#6a93df772026-09-30
  • R24-11rel:R24-11#be6b67802026-10-14
  • R25-11rel:R25-11#63c60a5b2026-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 SynchronizedPoolResource [SWS_CORE_00032]

explicit SynchronizedPoolResource (MemoryResource *upstream);

As per corresponding usage in [mem.res.pool]

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

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

Record
AUTOSAR/AP/record/SWS_CORE_00032
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CORE_00032@rel:R25-11#323b68b3
Content hash
323b68b3
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Core.pdf#nameddest=SWS_CORE_00032
Status: valid/unmigrated Version: rel:R25-11#067110c6 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_00032@rel:R25-11#067110c6
Point-in-Time History:
Recorded Revisions (3):
  • R25-11rel:R25-11#f8e2d78a2026-09-30
  • R24-11rel:R24-11#27e7852a2026-10-14
  • R25-11rel:R25-11#067110c62026-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 SynchronizedPoolResource [SWS_CORE_00033]

explicit SynchronizedPoolResource (const PoolOptions &opts);

As per corresponding usage in [mem.res.pool]

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

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

Record
AUTOSAR/AP/record/SWS_CORE_00033
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CORE_00033@rel:R25-11#225257a9
Content hash
225257a9
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Core.pdf#nameddest=SWS_CORE_00033
Status: valid/unmigrated Version: rel:R25-11#5b044f0f 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_00033@rel:R25-11#5b044f0f
Point-in-Time History:
Recorded Revisions (3):
  • R25-11rel:R25-11#c83c02272026-09-30
  • R24-11rel:R24-11#7830448d2026-10-14
  • R25-11rel:R25-11#5b044f0f2026-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 SynchronizedPoolResource [SWS_CORE_00034]

SynchronizedPoolResource (const SynchronizedPoolResource &)=delete;

As per corresponding usage in [mem.res.pool]

Header-Datei#include "ara/core/memory_resource.h"
Scopeclass ara::core::SynchronizedPoolResource

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

Record
AUTOSAR/AP/record/SWS_CORE_00034
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CORE_00034@rel:R25-11#036611bf
Content hash
036611bf
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Core.pdf#nameddest=SWS_CORE_00034
Status: valid/unmigrated Version: rel:R25-11#0d5ed9ad 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_00034@rel:R25-11#0d5ed9ad
Point-in-Time History:
Recorded Revisions (3):
  • R25-11rel:R25-11#e9c9708e2026-09-30
  • R24-11rel:R24-11#599cf30b2026-10-14
  • R25-11rel:R25-11#0d5ed9ad2026-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 SynchronizedPoolResource [SWS_CORE_00043] Upstream: RS_AP_00145

SynchronizedPoolResource (SynchronizedPoolResource &&other) noexcept=default;

[AUTOSAR defined] not present in ISO-14882. Move constructor

Header-Datei#include "ara/core/memory_resource.h"
Scopeclass ara::core::SynchronizedPoolResource
Exception-Sicherheitexception safe

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

Record
AUTOSAR/AP/record/SWS_CORE_00043
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CORE_00043@rel:R25-11#d29e1123
Content hash
d29e1123
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Core.pdf#nameddest=SWS_CORE_00043
Status: valid/unmigrated Version: rel:R25-11#107ef101 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_00043@rel:R25-11#107ef101
Point-in-Time History:
Recorded Revisions (3):
  • R25-11rel:R25-11#e85c46f22026-09-30
  • R24-11rel:R24-11#ee10a8d92026-10-14
  • R25-11rel:R25-11#107ef1012026-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 do_allocate [SWS_CORE_00061]

void * do_allocate (std::size_t bytes, std::size_t alignment) noexcept override;

As per corresponding usage in [mem.res.pool] except for the following deviations: 1. The function is noexcept 2. The function returns nullptr instead of (potentially) throwing a std::bad_alloc exception

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

Uso y semántica de asignación

La función miembro do_allocate de la clase ara::core::SynchronizedPoolResource del archivo de cabecera #include "ara/core/memory_resource.h" sirve para asignar áreas de memoria con el tamaño en bytes bytes y la alineación alignment especificados [SWS_CORE_00061]. En caso de éxito, la llamada síncrona devuelve, conforme a [mem.res.pool], un puntero válido del tipo void* al bloque de memoria asignado [SWS_CORE_00061].

Tratamiento de errores y desviaciones

En cuanto al comportamiento frente a errores, la implementación se desvía explícitamente de las especificaciones de [mem.res.pool]: el método está declarado como noexcept y no lanza una excepción std::bad_alloc [SWS_CORE_00061]. En caso de fallo de la solicitud de memoria, el puntero devuelto es obligatoriamente nullptr [SWS_CORE_00061]. Por lo tanto, los llamadores deben comprobar imperativamente si el valor de retorno es un puntero nulo para interceptar de forma fiable los errores de asignación.

Concurrencia e interacción

La función está especificada como exception safe y, a diferencia de otros recursos de memoria, como thread-safe [SWS_CORE_00061]. Debido a su visibilidad protected, en la práctica es probable que actúe principalmente como una anulación interna de la interfaz base puramente virtual do_allocate de ara::core::MemoryResource [SWS_CORE_06566]. Pregunta Q-95ba181693426bfc (abierta) Mientras que ara::core::SynchronizedPoolResource protege el acceso concurrente [SWS_CORE_00061], implementaciones comparables como ara::core::UnsynchronizedPoolResource::do_allocate [SWS_CORE_00058] y ara::core::MonotonicBufferResource::do_allocate [SWS_CORE_06569] están definidas como not thread-safe.

Este texto fue generado por un sistema de IA sobre la base de la especificación AUTOSAR Adaptive R25-11.

Guía del implementador pendiente (complejidad I1)

Header-Datei#include "ara/core/memory_resource.h"
Scopeclass ara::core::SynchronizedPoolResource
Exception-Sicherheitexception safe
Thread-Sicherheitthread-safe
Sichtbarkeitprotected

Rückgabewert

TypBeschreibung
void *• If successful: As per corresponding usage in [mem.res.pool] • If unsuccessful: the returned pointer shall be nullptr

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

Record
AUTOSAR/AP/record/SWS_CORE_00061
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CORE_00061@rel:R25-11#ceb7fdac
Content hash
ceb7fdac
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Core.pdf#nameddest=SWS_CORE_00061
Status: valid/unmigrated Version: rel:R25-11#7fd00d51 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_00061@rel:R25-11#7fd00d51
Point-in-Time History:
Recorded Revisions (3):
  • R25-11rel:R25-11#e22e6db22026-09-30
  • R24-11rel:R24-11#2f88c08f2026-10-14
  • R25-11rel:R25-11#7fd00d512026-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 do_deallocate [SWS_CORE_00041]

void do_deallocate (void *p, std::size_t bytes, std::size_t alignment) noexcept override;

As per corresponding usage in [mem.res.pool] except for the following deviations: 1. The function is noexcept 2. If unsuccessful: errors will be silently ignored

GENERADO POR IA no revisado Modelo: gemini-3.8-flash-medium · Esfuerzo: medium · Temperatura: no controlable · Prompt: b07cac0de0a1 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 protegida do_deallocate de la clase ara::core::SynchronizedPoolResource sirve para liberar un área de memoria previamente asignada conforme a [SWS_CORE_00041]. Su invocación se realiza de forma síncrona y espera como parámetros un puntero p al área de memoria, el tamaño bytes en bytes y la alineación de memoria alignment. Dado que la función miembro está declarada con visibilidad protected, probablemente no se invoque de forma directa en el código de aplicación regular, sino que se ejecute a través de la interfaz pública para la desasignación de la clase base superior ara::core::MemoryResource ([SWS_CORE_06567]). Pregunta Q-badea921c907c214 (abierta)

En cuanto al tratamiento de errores y el comportamiento ante excepciones, la especificación define dos desviaciones obligatorias respecto al estándar:

  • La función está declarada como noexcept y es completamente segura frente a excepciones (exception safe) ([SWS_CORE_00041]).
  • Si la desasignación no tiene éxito, los errores producidos se ignoran silenciosamente ([SWS_CORE_00041]). No se produce el lanzamiento de una excepción ni la notificación de un código de error.

En el ámbito de la concurrencia, la implementación en ara::core::SynchronizedPoolResource se caracteriza por estar especificada explícitamente como segura frente a hilos (thread-safe) ([SWS_CORE_00041]). Por tanto, es adecuada para la invocación concurrente desde múltiples hilos. En esto se diferencia sustancialmente de los recursos afines ara::core::UnsynchronizedPoolResource ([SWS_CORE_00059]) y ara::core::MonotonicBufferResource ([SWS_CORE_06570]), que están clasificados como no seguros frente a hilos.

Este texto ha sido generado por una IA sobre la base de la especificación AUTOSAR R25-11.

Guía del implementador pendiente (complejidad I1)

Header-Datei#include "ara/core/memory_resource.h"
Scopeclass ara::core::SynchronizedPoolResource
Exception-Sicherheitexception safe
Thread-Sicherheitthread-safe
Sichtbarkeitprotected

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

Record
AUTOSAR/AP/record/SWS_CORE_00041
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CORE_00041@rel:R25-11#6131b64e
Content hash
6131b64e
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Core.pdf#nameddest=SWS_CORE_00041
Status: valid/unmigrated Version: rel:R25-11#c6457f44 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_00041@rel:R25-11#c6457f44
Point-in-Time History:
Recorded Revisions (3):
  • R25-11rel:R25-11#874775232026-09-30
  • R24-11rel:R24-11#0c42970f2026-10-14
  • R25-11rel:R25-11#c6457f442026-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 do_is_equal [SWS_CORE_00042]

bool do_is_equal (const MemoryResource &other) const noexcept override;

As per corresponding usage in [mem.res.pool]

GENERADO POR IA no revisado Modelo: gemini-3.8-flash-medium · Esfuerzo: medium · Temperatura: no controlable · Prompt: c89ab0c97360 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 protegida do_is_equal comprueba la igualdad de una instancia de ara::core::SynchronizedPoolResource con otro recurso de memoria [SWS_CORE_00042]. Sobrescribe el método puramente virtual de la clase base procedente de ara::core::MemoryResource [SWS_CORE_06568] conforme a la especificación para recursos de tipo pool en [mem.res.pool].

Uso e interfaz: Como parámetro se pasa una referencia a otro objeto ara::core::MemoryResource (const MemoryResource &other). El valor de retorno de tipo bool indica si ambos recursos son equivalentes. Interpretación: Debido a la visibilidad protected, la función no se invoca directamente en el flujo regular de la aplicación, sino que se ejecuta a través del método público de comparación de la clase base. Pregunta Q-29fb2980d1241fae (abierta)

Tratamiento de errores y seguridad: El método está declarado con el identificador noexcept y especificado como exception safe [SWS_CORE_00042]. No se producen excepciones ni códigos de error específicos. La ejecución se realiza de forma síncrona.

Concurrencia: Según [SWS_CORE_00042], do_is_equal está especificado como thread-safe, de modo que se permiten comparaciones simultáneas entre varios hilos sin sincronización externa adicional.

Interacción: La función constituye la contraparte segura para hilos de la implementación en ara::core::UnsynchronizedPoolResource [SWS_CORE_00060]. Del mismo modo, ara::core::MonotonicBufferResource proporciona una sobrescritura correspondiente, que también está identificada como noexcept [SWS_CORE_06571].

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

Guía del implementador pendiente (complejidad I1)

Header-Datei#include "ara/core/memory_resource.h"
Scopeclass ara::core::SynchronizedPoolResource
Exception-Sicherheitexception safe
Thread-Sicherheitthread-safe
Sichtbarkeitprotected

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

Record
AUTOSAR/AP/record/SWS_CORE_00042
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CORE_00042@rel:R25-11#737ca2ff
Content hash
737ca2ff
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Core.pdf#nameddest=SWS_CORE_00042
Status: valid/unmigrated Version: rel:R25-11#6ecf1a68 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_00042@rel:R25-11#6ecf1a68
Point-in-Time History:
Recorded Revisions (3):
  • R25-11rel:R25-11#0fcf0b452026-09-30
  • R24-11rel:R24-11#d999b0d62026-10-14
  • R25-11rel:R25-11#6ecf1a682026-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_00036]

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

As per corresponding usage in [mem.res.pool]

Header-Datei#include "ara/core/memory_resource.h"
Scopeclass ara::core::SynchronizedPoolResource

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

Record
AUTOSAR/AP/record/SWS_CORE_00036
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CORE_00036@rel:R25-11#ba2c5fa0
Content hash
ba2c5fa0
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Core.pdf#nameddest=SWS_CORE_00036
Status: valid/unmigrated Version: rel:R25-11#71efdb4a 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_00036@rel:R25-11#71efdb4a
Point-in-Time History:
Recorded Revisions (3):
  • R25-11rel:R25-11#e3bdcb9c2026-09-30
  • R24-11rel:R24-11#fc1cd0a02026-10-14
  • R25-11rel:R25-11#71efdb4a2026-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_00044] Upstream: RS_AP_00145

SynchronizedPoolResource & operator= (SynchronizedPoolResource &&other) noexcept=default;

[AUTOSAR defined] not present in ISO-14882. Move assignment operator

Header-Datei#include "ara/core/memory_resource.h"
Scopeclass ara::core::SynchronizedPoolResource
Exception-Sicherheitexception safe

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

Record
AUTOSAR/AP/record/SWS_CORE_00044
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CORE_00044@rel:R25-11#69033743
Content hash
69033743
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Core.pdf#nameddest=SWS_CORE_00044
Status: valid/unmigrated Version: rel:R25-11#4a2251b2 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_00044@rel:R25-11#4a2251b2
Point-in-Time History:
Recorded Revisions (3):
  • R25-11rel:R25-11#2845c0fb2026-09-30
  • R24-11rel:R24-11#9e9c91662026-10-14
  • R25-11rel:R25-11#4a2251b22026-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 options [SWS_CORE_00039]

PoolOptions options () const noexcept;

As per corresponding usage in [mem.res.pool]

GENERADO POR IA no revisado Modelo: gemini-3.8-flash-medium · Esfuerzo: medium · Temperatura: no controlable · Prompt: 4714ac548826 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 options de la clase ara::core::SynchronizedPoolResource devuelve síncronamente los ajustes configurados para el recurso de memoria de tipo PoolOptions [SWS_CORE_00039]. La invocación se realiza sin parámetros sobre una instancia de la clase y está declarada mediante el encabezado ara/core/memory_resource.h [SWS_CORE_00039]. Según la especificación, el comportamiento se orienta en [mem.res.pool] [SWS_CORE_00039], lo que probablemente pueda interpretarse como una adaptación a los recursos de pool del estándar de C++. Pregunta Q-9abfddc2cf8dc88c (abierta)

En cuanto al tratamiento de errores y la seguridad frente a excepciones, el método está declarado como noexcept y se considera completamente seguro frente a excepciones (exception safe) [SWS_CORE_00039]. No existen códigos de error específicos ni mensajes a DET o DEM para esta función de consulta.

Con respecto a la concurrencia, el método está especificado como const así como expresamente seguro para subprocesos (thread-safe) [SWS_CORE_00039]. Por lo tanto, puede invocarse de forma segura y en paralelo desde múltiples subprocesos sin medidas adicionales de sincronización a nivel de usuario.

En la interacción dentro de ara::core, [SWS_CORE_00057] proporciona la contraparte no sincronizada: para ara::core::UnsynchronizedPoolResource existe una función options con el mismo nombre y signatura, con semántica idéntica según [mem.res.pool].

Este texto fue generado por una IA y sirve como guía de orientación para el uso.

Header-Datei#include "ara/core/memory_resource.h"
Scopeclass ara::core::SynchronizedPoolResource
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_00039
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CORE_00039@rel:R25-11#e0733e28
Content hash
e0733e28
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Core.pdf#nameddest=SWS_CORE_00039
Status: valid/unmigrated Version: rel:R25-11#104880b6 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_00039@rel:R25-11#104880b6
Point-in-Time History:
Recorded Revisions (3):
  • R25-11rel:R25-11#065c07432026-09-30
  • R24-11rel:R24-11#d92abe712026-10-14
  • R25-11rel:R25-11#104880b62026-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 release [SWS_CORE_00037]

void release () noexcept;

As per corresponding usage in [mem.res.pool]

GENERADO POR IA no revisado Modelo: gemini-3.8-flash-medium · Esfuerzo: medium · Temperatura: no controlable · Prompt: 32c426df4959 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 síncrona release() pertenece a la clase ara::core::SynchronizedPoolResource y se proporciona a través del archivo de cabecera #include "ara/core/memory_resource.h" [SWS_CORE_00037]. Posee la signatura void release () noexcept;, no recibe parámetros y no tiene valor de retorno. La semántica funcional se rige por el uso correspondiente en [mem.res.pool] [SWS_CORE_00037], con lo cual se libera la memoria gestionada por el recurso de memoria.

En cuanto al tratamiento de errores, la función está declarada como segura frente a excepciones (exception safe) y noexcept [SWS_CORE_00037]. No se producen excepciones de C++; dentro del alcance de la especificación no se definen códigos de error específicos ni reportes de error mediante DET o DEM.

En lo que respecta a la concurrencia, la operación está especificada expresamente como segura para hilos (thread-safe) [SWS_CORE_00037]. Por tanto, una llamada simultánea desde múltiples hilos sobre la misma instancia de recurso presumiblemente sea admisible sin bloqueos adicionales por parte de la aplicación. Pregunta Q-3da3b45ca2070b3e (abierta)

En su interacción, el comportamiento se corresponde con el método de igual funcionalidad en ara::core::UnsynchronizedPoolResource [SWS_CORE_00065], el cual también hace referencia a [mem.res.pool] y está designado como noexcept así como thread-safe. Por el contrario, la función análoga release() de ara::core::MonotonicBufferResource [SWS_CORE_06530], según la especificación, no es segura para hilos (not thread-safe), a pesar de estar sujeta asimismo a la garantía noexcept.

Este texto fue elaborado por una IA y se basa exclusivamente en los datos de especificación de AUTOSAR R25-11.

Header-Datei#include "ara/core/memory_resource.h"
Scopeclass ara::core::SynchronizedPoolResource
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_00037
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CORE_00037@rel:R25-11#1df786e5
Content hash
1df786e5
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Core.pdf#nameddest=SWS_CORE_00037
Status: valid/unmigrated Version: rel:R25-11#e7871754 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_00037@rel:R25-11#e7871754
Point-in-Time History:
Recorded Revisions (3):
  • R25-11rel:R25-11#adf41cb12026-09-30
  • R24-11rel:R24-11#00875b8f2026-10-14
  • R25-11rel:R25-11#e78717542026-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 upstream_resource [SWS_CORE_00038]

MemoryResource * upstream_resource () const noexcept;

As per corresponding usage in [mem.res.pool]

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

usar

La función miembro upstream_resource() de la clase ara::core::SynchronizedPoolResource proporciona un puntero al recurso de memoria aguas arriba subyacente (MemoryResource*) según [SWS_CORE_00038]. La llamada se realiza de manera síncrona y requiere la inclusión del archivo de cabecera #include "ara/core/memory_resource.h" [SWS_CORE_00038]. La función no recibe parámetros de entrada y actúa como un mero inspector para la unidad de gestión de memoria de nivel superior.

Tratamiento de fallos y seguridad frente a excepciones

El método está declarado como noexcept y, conforme a la especificación, clasificado como seguro frente a excepciones (exception safe) [SWS_CORE_00038]. Queda descartado un fallo de la consulta o la emisión de excepciones; para esta llamada no existen códigos de error.

Concurrencia y restricciones

La función está especificada como const así como explícitamente como segura para hilos (thread-safe) [SWS_CORE_00038]. De este modo, puede invocarse concurrentemente desde múltiples contextos de ejecución sin sincronización externa adicional.

Interacción

El concepto de un recurso de memoria upstream se proporciona de forma coherente a través de distintas implementaciones de pools de memoria de AUTOSAR Adaptive Core:

  • En ara::core::UnsynchronizedPoolResource, el método funcionalmente idéntico [SWS_CORE_00056] también proporciona un puntero al recurso upstream, pero está orientado a escenarios de pools no sincronizados internamente.
  • En ara::core::MonotonicBufferResource existe con [SWS_CORE_06531] una contraparte equivalente que asimismo está especificada como noexcept y con seguridad frente a hilos.

Esta nota de uso se generó automáticamente a partir del payload de AUTOSAR.

Header-Datei#include "ara/core/memory_resource.h"
Scopeclass ara::core::SynchronizedPoolResource
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_00038
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CORE_00038@rel:R25-11#912afdb1
Content hash
912afdb1
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Core.pdf#nameddest=SWS_CORE_00038
Status: valid/unmigrated Version: rel:R25-11#72bf42c6 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_00038@rel:R25-11#72bf42c6
Point-in-Time History:
Recorded Revisions (3):
  • R25-11rel:R25-11#8f2216bb2026-09-30
  • R24-11rel:R24-11#4fe314762026-10-14
  • R25-11rel:R25-11#72bf42c62026-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 ~SynchronizedPoolResource [SWS_CORE_00035]

~SynchronizedPoolResource () noexcept override;

As per corresponding usage in [mem.res.pool] except for the following deviations: 1. The function is not virtual

Header-Datei#include "ara/core/memory_resource.h"
Scopeclass ara::core::SynchronizedPoolResource
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_00035
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CORE_00035@rel:R25-11#2ae2e7c4
Content hash
2ae2e7c4
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Core.pdf#nameddest=SWS_CORE_00035
Status: valid/unmigrated Version: rel:R25-11#ecac8c82 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_00035@rel:R25-11#ecac8c82
Point-in-Time History:
Recorded Revisions (3):
  • R25-11rel:R25-11#7dd197ad2026-09-30
  • R24-11rel:R24-11#969d9a0a2026-10-14
  • R25-11rel:R25-11#ecac8c822026-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