DEENESPTFRRUARHIKOZHNL

clase ara::core::PolymorphicAllocator

[SWS_CORE_06540] Upstream: RS_AP_00130

template <class Tp = ara::core::Byte> class PolymorphicAllocator {...};

Implementation of std::pmr::polymorphic_allocator from [mem.poly.allocator.class]

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

Guía del usuarioGENERADO POR IA

Gestiona la asignación polimórfica de memoria para objetos y contenedores a través de recursos de memoria intercambiables.
GENERADO POR IA no revisado Modelo: gemini-3.8-flash-medium · Esfuerzo: medium · Temperatura: no controlable · Prompt: 4f3088ca1f09 Procedencia Preguntas abiertas (2)
traducido de la guía alemanagemini-3.8-flash-low · 2026-10-13 · Original en alemán

Gestiona la asignación polimórfica de memoria para objetos y contenedores a través de recursos de memoria intercambiables.

La clase plantilla encapsula la asignación dinámica basada en recursos de memoria para aplicaciones adaptativas y contenedores como una implementación de asignadores polimórficos completamente libre de excepciones [SWS_CORE_06541]. Para el control flexible del ciclo de vida de los objetos, la instancia delega todas las solicitudes de memoria en un recurso de memoria intercambiable, devolviendo de forma determinista punteros nulos en lugar de excepciones de C++ si fallan las asignaciones [SWS_CORE_06547]. Como condiciones de contorno funcionales esenciales, la asignación por copia regular está explícitamente prohibida, mientras que las operaciones de liberación erróneas durante el funcionamiento continuo siempre se ignoran silenciosamente.

Contexto

La clase plantilla ara::core::PolymorphicAllocator implementa en AUTOSAR Adaptive la interfaz para la asignación de memoria polimórfica y con estado conforme al patrón estándar de C++, y define el tipo de elemento subyacente value_type [SWS_CORE_06572]. Actúa como adaptador intermediario entre componentes llamadores —como contenedores o estructuras de aplicación— y un recurso de memoria concreto. Mediante el método resource() se puede consultar en cualquier momento el puntero al MemoryResource utilizado [SWS_CORE_06557]. Gracias a este encapsulamiento, la solicitud de memoria se desacopla semánticamente de la implementación concreta de la gestión de memoria.

diag_context caller Aufrufer / Container allocator PolymorphicAllocator caller->allocator Allokationsaufruf resource MemoryResource allocator->resource Speicherdelegierung

Diagrama de contexto: integración del asignador entre el llamador y el recurso de memoria. Fuentes: [SWS_CORE_06557], [SWS_CORE_06572].

Ciclo de vida

Las instancias del asignador se construyen por defecto [SWS_CORE_06541] o bien con un puntero a un MemoryResource específico [SWS_CORE_06542]. Dado que el asignador únicamente hace referencia al recurso de memoria, la responsabilidad de su ciclo de vida recae previsiblemente en el llamador. Pregunta Q-adde89798a03cf8b (abierta) Además del constructor de copia regular [SWS_CORE_06543], un constructor de conversión permite la inicialización a partir de asignadores para otros tipos de elementos U [SWS_CORE_06544].

En cuanto a las transferencias de propiedad, el operador de asignación por copia regular está eliminado (=delete) [SWS_CORE_06545]. Por el contrario, AUTOSAR define explícitamente un constructor de movimiento [SWS_CORE_06546], así como un operador de asignación por movimiento estándar [SWS_CORE_00066]. En operaciones de copia de contenedores, el método select_on_container_copy_construction() genera una instancia de asignador correspondiente [SWS_CORE_06573].

Respecto a la concurrencia, los constructores predeterminados y de conversión, así como la consulta del recurso de memoria, están especificados como seguros para subprocesos ([SWS_CORE_06541], [SWS_CORE_06542], [SWS_CORE_06544], [SWS_CORE_06557]). Por el contrario, las operaciones de movimiento ([SWS_CORE_06546]), las selecciones de copia ([SWS_CORE_06573]) y todas las operaciones de asignación, construcción y desasignación están declaradas como no seguras para subprocesos.

Ruta de uso

El flujo regular abarca la provisión de memoria, la construcción de objetos, así como su posterior destrucción y liberación:

  • Asignación de memoria: se solicita memoria bruta para n objetos del tipo Tp mediante allocate() [SWS_CORE_06547]. Como alternativa, están disponibles allocate_bytes() para asignación exacta en bytes con alineación [SWS_CORE_06549], así como la plantilla allocate_object() para asignaciones tipificadas [SWS_CORE_06551].
  • Inicialización de objetos: el método construct() crea objetos en el área de memoria previamente asignada [SWS_CORE_06555]. Como operación combinada, new_object() ofrece la asignación y la construcción in situ en una sola llamada [SWS_CORE_06553].
  • Destrucción y liberación: la destrucción se efectúa mediante destroy() [SWS_CORE_06556], seguida de la liberación a través de deallocate() [SWS_CORE_06548], deallocate_bytes() [SWS_CORE_06550] o deallocate_object() [SWS_CORE_06552]. Ambas pueden combinarse alternativamente mediante delete_object() [SWS_CORE_06554].
Flujo de la asignación, construcción, destrucción y liberaciónInvocadorPolymorphicAllocatorMemoryResourceallocate(n)Speicher anfordernSpeicheradresseTp* (o nullptr)construct(p, args...)Objektkonstruktiondestroy(p)Objektdestruktiondeallocate(p, n)Speicher freigeben

Diagrama de secuencia: flujo típico de asignación, construcción, destrucción y liberación. Fuentes: [SWS_CORE_06547], [SWS_CORE_06548], [SWS_CORE_06555], [SWS_CORE_06556].

Escenarios de error

La clase difiere del estándar ISO C++ en mecanismos esenciales de tratamiento de errores para satisfacer requisitos estrictos de sistemas libres de excepciones:

Esta guía se basa en la especificación de ara::core::PolymorphicAllocator de AUTOSAR R25-11 y fue creada de manera automatizada.

Mapa de miembros

Diagrama de clases

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

G nara__core__PolymorphicAllocator970 PolymorphicAllocator + PolymorphicAllocator() + operator=() + allocate() + allocate_bytes() + allocate_object() + construct() + deallocate() + deallocate_bytes() + deallocate_object() + delete_object() + destroy() + new_object() + resource() + select_on_container_copy_construction()

Vista de detalle

Selecciona una entrada en el índice.

Constructores y destructor

≙ [mem.poly.allocator.class]

Sobrecargas PolymorphicAllocator 5
PolymorphicAllocator () noexcept; SWS_CORE_06541
PolymorphicAllocator (MemoryResource *r) noexcept; SWS_CORE_06542
PolymorphicAllocator (const PolymorphicAllocator &other) noexcept=default; SWS_CORE_06543
template <class U> PolymorphicAllocator (const PolymorphicAllocator< U > &other) noexcept; SWS_CORE_06544
PolymorphicAllocator (PolymorphicAllocator &&other) noexcept; SWS_CORE_06546

Métodos

allocate función

except for the following deviations: 1. The function is noexcept 2. If unsuccessful: nullptr is returned, instead of raising any Exception ≙ [mem.poly.allocator.class]

[[nodiscard]] Tp * allocate (std::size_t n) noexcept;

except for the following deviations: 1. The function is noexcept 2. If unsuccessful: the returned pointer shall be nullptr ≙ [mem.poly.allocator.class]

[[nodiscard]] void * allocate_bytes (std::size_t nbytes, std::size_t alignment=alignof(std::max_align_t)) noexcept;

except for the following deviations: 1. The function is noexcept 2. If unsuccessful: the returned pointer shall be nullptr ≙ [mem.poly.allocator.class]

template <class T> [[nodiscard]] T * allocate_object (std::size_t n=1) noexcept;
construct función

except for the following deviations: 1. Function is conditionally noexcept ≙ [mem.poly.allocator.class]

template <class T, class... Args> void construct (T *p, Args &&... args) noexcept(std::is_nothrow_ constructible< T, Args... >::value);
deallocate función

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

void deallocate (Tp *p, std::size_t n) noexcept;

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

void deallocate_bytes (void *p, std::size_t nbytes, std::size_t alignment=alignof(std::max_align_t)) noexcept;

except for the following deviations: 1. Function is nullptr 2. If unsuccessful: errors will be silently ignored ≙ [mem.poly.allocator.class]

template <class T> void deallocate_object (T *p, std::size_t n=1) noexcept;
delete_object función

except for the following deviations: 1. Function is conditionally noexcept 2. If unsuccessful: errors will be silently ignored ≙ [mem.poly.allocator.class]

template <class T> void delete_object (T *p) noexcept(std::is_nothrow_destructible< T >::value);
destroy función

except for the following deviations: 1. Function is conditionally noexcept ≙ [mem.poly.allocator.class]

template <class T> void destroy (T *p) noexcept(std::is_nothrow_destructible< T >::value);
new_object función

except for the following deviations: 1. Function is conditionally noexcept 2. If unsuccessful: nullptr is returned, instead of raising any Exception ≙ [mem.poly.allocator.class]

template <class T, class... CtorArgs> [[nodiscard]] T * new_object (CtorArgs &&... ctor_args) noexcept(std::is_nothrow_constructible< T, CtorArgs... >::value);
resource función

≙ [mem.poly.allocator.class]

MemoryResource * resource () const noexcept;

except for the following deviations: 1. The function is noexcept ≙ [mem.poly.allocator.class]

PolymorphicAllocator select_on_container_copy_construction () const noexcept;

Operadores

operator= función 2

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

Sobrecargas = 2
PolymorphicAllocator & operator= (PolymorphicAllocator &&other) noexcept=default; SWS_CORE_00066

Alias de tipo

value_type alias de tipo

≙ [mem.poly.allocator.class]

using value_type = Tp;

Documentación de los métodos

función PolymorphicAllocator [SWS_CORE_06541]

PolymorphicAllocator () noexcept;

As per corresponding usage in [mem.poly.allocator.class]

Header-Datei#include "ara/core/memory_resource.h"
Scopeclass ara::core::PolymorphicAllocator
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_06541
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CORE_06541@rel:R25-11#681d8cf9
Content hash
681d8cf9
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Core.pdf#nameddest=SWS_CORE_06541
Status: valid/unmigrated Version: rel:R25-11#195a35ec Versionshistorie & Revisions (1 transition, 4 revision)
Current State
valid/unmigrated
Reason
mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record
Campaign
2026-08-13-status-backfill
Active Version
AUTOSAR/AP/record/SWS_CORE_06541@rel:R25-11#195a35ec
Point-in-Time History:
Recorded Revisions (4):
  • R25-11rel:R25-11#7e6fd9e52026-09-30
  • R23-11rel:R23-11#1465b8862026-10-14
  • R24-11rel:R24-11#a1bf01392026-10-14
  • R25-11rel:R25-11#195a35ec2026-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 PolymorphicAllocator [SWS_CORE_06542]

PolymorphicAllocator (MemoryResource *r) noexcept;

As per corresponding usage in [mem.poly.allocator.class] except for the following deviations: 1. The function is noexcept

Header-Datei#include "ara/core/memory_resource.h"
Scopeclass ara::core::PolymorphicAllocator
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_06542
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CORE_06542@rel:R25-11#c18224fc
Content hash
c18224fc
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Core.pdf#nameddest=SWS_CORE_06542
Status: valid/unmigrated Version: rel:R25-11#8bd93278 Versionshistorie & Revisions (1 transition, 4 revision)
Current State
valid/unmigrated
Reason
mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record
Campaign
2026-08-13-status-backfill
Active Version
AUTOSAR/AP/record/SWS_CORE_06542@rel:R25-11#8bd93278
Point-in-Time History:
Recorded Revisions (4):
  • R25-11rel:R25-11#8ff7601b2026-09-30
  • R23-11rel:R23-11#d5a7d6172026-10-14
  • R24-11rel:R24-11#728611b82026-10-14
  • R25-11rel:R25-11#8bd932782026-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 PolymorphicAllocator [SWS_CORE_06543]

PolymorphicAllocator (const PolymorphicAllocator &other) noexcept=default;

As per corresponding usage in [mem.poly.allocator.class] except for the following deviations: 1. The function is noexcept

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

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

Record
AUTOSAR/AP/record/SWS_CORE_06543
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CORE_06543@rel:R25-11#7b895b4f
Content hash
7b895b4f
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Core.pdf#nameddest=SWS_CORE_06543
Status: valid/unmigrated Version: rel:R25-11#5d62e6ca Versionshistorie & Revisions (1 transition, 4 revision)
Current State
valid/unmigrated
Reason
mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record
Campaign
2026-08-13-status-backfill
Active Version
AUTOSAR/AP/record/SWS_CORE_06543@rel:R25-11#5d62e6ca
Point-in-Time History:
Recorded Revisions (4):
  • R25-11rel:R25-11#50677d202026-09-30
  • R23-11rel:R23-11#fc99e5522026-10-14
  • R24-11rel:R24-11#7f7cdd4b2026-10-14
  • R25-11rel:R25-11#5d62e6ca2026-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 PolymorphicAllocator [SWS_CORE_06544]

template <class U> PolymorphicAllocator (const PolymorphicAllocator< U > &other) noexcept;

As per corresponding usage in [mem.poly.allocator.class]

Header-Datei#include "ara/core/memory_resource.h"
Scopeclass ara::core::PolymorphicAllocator
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_06544
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CORE_06544@rel:R25-11#66c581d9
Content hash
66c581d9
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Core.pdf#nameddest=SWS_CORE_06544
Status: valid/unmigrated Version: rel:R25-11#539ac7f5 Versionshistorie & Revisions (1 transition, 4 revision)
Current State
valid/unmigrated
Reason
mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record
Campaign
2026-08-13-status-backfill
Active Version
AUTOSAR/AP/record/SWS_CORE_06544@rel:R25-11#539ac7f5
Point-in-Time History:
Recorded Revisions (4):
  • R25-11rel:R25-11#1facdd412026-09-30
  • R23-11rel:R23-11#a331d77c2026-10-14
  • R24-11rel:R24-11#745d118b2026-10-14
  • R25-11rel:R25-11#539ac7f52026-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 PolymorphicAllocator [SWS_CORE_06546] Upstream: RS_AP_00145

PolymorphicAllocator (PolymorphicAllocator &&other) noexcept;

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

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

Parameter (in)

ParameterBeschreibung
otherother PolymorphicAllocator to move from

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

Record
AUTOSAR/AP/record/SWS_CORE_06546
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CORE_06546@rel:R25-11#06b8cff5
Content hash
06b8cff5
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Core.pdf#nameddest=SWS_CORE_06546
Status: valid/unmigrated Version: rel:R25-11#8cbb6f43 Versionshistorie & Revisions (1 transition, 4 revision)
Current State
valid/unmigrated
Reason
mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record
Campaign
2026-08-13-status-backfill
Active Version
AUTOSAR/AP/record/SWS_CORE_06546@rel:R25-11#8cbb6f43
Point-in-Time History:
Recorded Revisions (4):
  • R25-11rel:R25-11#cbffc4452026-09-30
  • R23-11rel:R23-11#76904a592026-10-14
  • R24-11rel:R24-11#fb6303702026-10-14
  • R25-11rel:R25-11#8cbb6f432026-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 allocate [SWS_CORE_06547]

[[nodiscard]] Tp * allocate (std::size_t n) noexcept;

As per corresponding usage in [mem.poly.allocator.class] except for the following deviations: 1. The function is noexcept 2. If unsuccessful: nullptr is returned, instead of raising any Exception

GENERADO POR IA no revisado Modelo: gemini-3.8-flash-medium · Esfuerzo: medium · Temperatura: no controlable · Prompt: e24ff27c5b25 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 allocate de la clase ara::core::PolymorphicAllocator sirve para solicitar síncronamente memoria no inicializada para n objetos del tipo Tp [SWS_CORE_06547]. Se basa en la funcionalidad de [mem.poly.allocator.class], pero se desvía deliberadamente del estándar C++ mediante la declaración como noexcept y el atributo [[nodiscard]] [SWS_CORE_06547].

En caso de error, allocate no lanza ninguna excepción como std::bad_alloc, sino que devuelve en su lugar un nullptr [SWS_CORE_06547]. Debido a [[nodiscard]], el llamante debe recibir explícitamente el valor de retorno y comprobar si es nullptr antes de utilizar la región de memoria [SWS_CORE_06547]. En cuanto a la concurrencia, la función está clasificada como segura frente a excepciones, pero se considera no segura para subprocesos (not thread-safe) [SWS_CORE_06547]. Interpretación: por tanto, es probable que una llamada síncrona a través del mismo asignador desde distintos subprocesos requiera protección externa por parte del llamante. Pregunta Q-b00116faadf930fe (abierta)

El comportamiento tolerante a fallos sin excepciones se corresponde directamente con la interfaz ara::core::MemoryResource::allocate [SWS_CORE_06503], que también está definida como noexcept y devuelve nullptr en caso de error. Las instancias predefinidas como NullMemoryResource [SWS_CORE_06563] también emplean este principio y devuelven sistemáticamente nullptr en las llamadas de asignación. En un nivel superior, este mecanismo interactúa con contenedores como ara::core::Vector [SWS_CORE_01315], cuyos operadores de asignación están adaptados a tales propiedades de asignación.

Este texto fue generado automáticamente. El documento normativo es la especificación AUTOSAR.

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

Rückgabewert

TypBeschreibung
Tp *• If successful: As per corresponding usage in [mem.poly.allocator.class] • 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_06547
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CORE_06547@rel:R25-11#c446c934
Content hash
c446c934
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Core.pdf#nameddest=SWS_CORE_06547
Status: valid/unmigrated Version: rel:R25-11#c37fff24 Versionshistorie & Revisions (1 transition, 4 revision)
Current State
valid/unmigrated
Reason
mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record
Campaign
2026-08-13-status-backfill
Active Version
AUTOSAR/AP/record/SWS_CORE_06547@rel:R25-11#c37fff24
Point-in-Time History:
Recorded Revisions (4):
  • R25-11rel:R25-11#1a6944692026-09-30
  • R23-11rel:R23-11#eca29eb82026-10-14
  • R24-11rel:R24-11#ae9311ae2026-10-14
  • R25-11rel:R25-11#c37fff242026-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 allocate_bytes [SWS_CORE_06549]

[[nodiscard]] void * allocate_bytes (std::size_t nbytes, std::size_t alignment=alignof(std::max_align_t)) noexcept;

As per corresponding usage in [mem.poly.allocator.class] except for the following deviations: 1. The function is noexcept 2. If unsuccessful: the returned pointer shall be nullptr

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

usar

La función miembro allocate_bytes de la clase ara::core::PolymorphicAllocator reserva memoria bruta con un tamaño de nbytes y la alineación predeterminada alignment [SWS_CORE_06549]. El valor predeterminado para la alineación corresponde a alignof(std::max_align_t) [SWS_CORE_06549]. La función se incluye a través del encabezado ara/core/memory_resource.h y se ejecuta de forma síncrona [SWS_CORE_06549].

Tratamiento de errores y semántica

A diferencia del comportamiento estándar según [mem.poly.allocator.class], la implementación presenta dos desviaciones [SWS_CORE_06549]:

  • La función está declarada como noexcept y no lanza excepciones [SWS_CORE_06549].
  • Si la asignación falla, la función devuelve nullptr en lugar de lanzar una excepción [SWS_CORE_06549].

Debido al atributo [[nodiscard]], el valor de retorno debe ser evaluado por el invocador, en particular mediante una comprobación de nullptr antes de acceder al área de memoria [SWS_CORE_06549].

Concurrencia y restricciones

Respecto a la seguridad para subprocesos, el método está especificado como not thread-safe [SWS_CORE_06549]. Por tanto, es probable que las llamadas paralelas sobre la misma instancia requieran una sincronización externa [SWS_CORE_06549]. Pregunta Q-85c74d55563cae38 (abierta) En lo relativo a la seguridad frente a excepciones, la operación se considera exception safe [SWS_CORE_06549].

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

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

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

Record
AUTOSAR/AP/record/SWS_CORE_06549
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CORE_06549@rel:R25-11#247574bf
Content hash
247574bf
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Core.pdf#nameddest=SWS_CORE_06549
Status: valid/unmigrated Version: rel:R25-11#126a0b29 Versionshistorie & Revisions (1 transition, 4 revision)
Current State
valid/unmigrated
Reason
mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record
Campaign
2026-08-13-status-backfill
Active Version
AUTOSAR/AP/record/SWS_CORE_06549@rel:R25-11#126a0b29
Point-in-Time History:
Recorded Revisions (4):
  • R25-11rel:R25-11#d65ae27d2026-09-30
  • R23-11rel:R23-11#d9ed47762026-10-14
  • R24-11rel:R24-11#9b3f93072026-10-14
  • R25-11rel:R25-11#126a0b292026-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 allocate_object [SWS_CORE_06551]

template <class T> [[nodiscard]] T * allocate_object (std::size_t n=1) noexcept;

As per corresponding usage in [mem.poly.allocator.class] except for the following deviations: 1. The function is noexcept 2. If unsuccessful: the returned pointer shall be nullptr

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

usar

La función miembro de plantilla allocate_object forma parte de la clase ara::core::PolymorphicAllocator y se proporciona a través del archivo de cabecera #include "ara/core/memory_resource.h" [SWS_CORE_06551]. Asigna memoria de forma síncrona para n objetos del tipo T, donde el parámetro n toma por defecto el valor 1 [SWS_CORE_06551]. El atributo de compilador [[nodiscard]] obliga a los llamadores a no ignorar el puntero tipificado T* devuelto.

Manejo de errores

La especificación define dos desviaciones explícitas respecto al estándar [mem.poly.allocator.class] [SWS_CORE_06551]:

  • Sin excepciones: la función está declarada como noexcept y especificada como segura frente a excepciones (exception safe) [SWS_CORE_06551].
  • Puntero nulo en caso de fallo: si la asignación de memoria falla, no se lanza ninguna excepción, sino que se devuelve obligatoriamente nullptr [SWS_CORE_06551].

Por lo tanto, el llamador debe comprobar si el puntero devuelto es nullptr inmediatamente antes de seguir utilizándolo.

Concurrencia y restricciones

La operación está especificada como no segura para subprocesos (not thread-safe) [SWS_CORE_06551]. En caso de uso concurrente de la misma instancia del asignador, es probable que se requiera una sincronización externa para evitar carreras de datos. Además, la función reserva memoria pura (interpretación: la construcción de objetos en la memoria reservada corresponde a mecanismos posteriores). Pregunta Q-c41df2caaeb4c503 (abierta)

Este texto ha sido generado por una IA y se basa en la especificación de AUTOSAR R25-11.

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

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

Record
AUTOSAR/AP/record/SWS_CORE_06551
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CORE_06551@rel:R25-11#b0a5b162
Content hash
b0a5b162
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Core.pdf#nameddest=SWS_CORE_06551
Status: valid/unmigrated Version: rel:R25-11#e1e4da70 Versionshistorie & Revisions (1 transition, 4 revision)
Current State
valid/unmigrated
Reason
mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record
Campaign
2026-08-13-status-backfill
Active Version
AUTOSAR/AP/record/SWS_CORE_06551@rel:R25-11#e1e4da70
Point-in-Time History:
Recorded Revisions (4):
  • R25-11rel:R25-11#3b58128a2026-09-30
  • R23-11rel:R23-11#68fdb6af2026-10-14
  • R24-11rel:R24-11#e6cdc1b02026-10-14
  • R25-11rel:R25-11#e1e4da702026-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 construct [SWS_CORE_06555]

template <class T, class... Args> void construct (T *p, Args &&... args) noexcept(std::is_nothrow_ constructible< T, Args... >::value);

As per corresponding usage in [mem.poly.allocator.class] except for the following deviations: 1. Function is conditionally noexcept

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

La función de plantilla construct de la clase ara::core::PolymorphicAllocator ([SWS_CORE_06555]) sirve para la creación síncrona de un objeto del tipo T en la dirección de memoria p pasada, reenviando los argumentos args.... Está definida a través de la cabecera ara/core/memory_resource.h y sigue esencialmente las especificaciones de [mem.poly.allocator.class].

Una desviación explícita respecto al estándar C++ concierne al tratamiento de excepciones: según [SWS_CORE_06555], la función está declarada condicionalmente como noexcept, en función de si se cumple std::is_nothrow_constructible<T, Args...>::value. De este modo, la especificación le asigna el atributo conditionally exception safe. Interpretación: siempre que T no sea construible sin excepciones, es probable que cualquier excepción del constructor se propague sin trabas al llamador, ya que no se definen códigos de error internos ni mecanismos de captura especiales. Pregunta Q-ad77510f396e59ae (abierta)

En cuanto a concurrencia y condiciones de contorno, construct está especificada como no segura para subprocesos (not thread-safe) ([SWS_CORE_06555]). Por lo tanto, en accesos paralelos a la misma instancia de Allocator o a la misma área de memoria, se requiere obligatoriamente una sincronización externa en el contexto de llamada.

El patrón arquitectónico de una declaración noexcept dependiente del tipo corresponde a las convenciones de ara::core, tal y como se emplean también, entre otros, en los constructores de ara::core::Result ([SWS_CORE_00725], [SWS_CORE_00726]).

Esta nota de uso se ha generado de forma automatizada y se basa exclusivamente en la especificación de AUTOSAR Adaptive versión R25-11.

Header-Datei#include "ara/core/memory_resource.h"
Scopeclass ara::core::PolymorphicAllocator
Exception-Sicherheitconditionally exception safe
Thread-Sicherheitnot thread-safe

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

Record
AUTOSAR/AP/record/SWS_CORE_06555
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CORE_06555@rel:R25-11#690bbd35
Content hash
690bbd35
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Core.pdf#nameddest=SWS_CORE_06555
Status: valid/unmigrated Version: rel:R25-11#0973fb97 Versionshistorie & Revisions (1 transition, 4 revision)
Current State
valid/unmigrated
Reason
mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record
Campaign
2026-08-13-status-backfill
Active Version
AUTOSAR/AP/record/SWS_CORE_06555@rel:R25-11#0973fb97
Point-in-Time History:
Recorded Revisions (4):
  • R25-11rel:R25-11#797687e32026-09-30
  • R23-11rel:R23-11#62b249762026-10-14
  • R24-11rel:R24-11#44e873a92026-10-14
  • R25-11rel:R25-11#0973fb972026-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 deallocate [SWS_CORE_06548]

void deallocate (Tp *p, std::size_t n) noexcept;

As per corresponding usage in [mem.poly.allocator.class] 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: 2c2725501203 Procedencia
traducido de la guía alemanagemini-3.8-flash-low · 2026-10-13 · Original en alemán

usar

La función miembro deallocate de la clase ara::core::PolymorphicAllocator libera la memoria asignada previamente para n objetos del tipo Tp a partir de la dirección p [SWS_CORE_06548]. La declaración se realiza a través de la cabecera ara/core/memory_resource.h [SWS_CORE_06548]. La función sigue en principio la semántica del asignador estándar de C++ conforme a [mem.poly.allocator.class], pero presenta dos desviaciones específicas [SWS_CORE_06548].

Tratamiento de errores y seguridad frente a excepciones

Como desviación fundamental, la operación está declarada como noexcept y especificada como segura frente a excepciones (exception safe) [SWS_CORE_06548]. Si la liberación de memoria falla, los errores que se produzcan se ignoran silenciosamente (silently ignored), de modo que ni se lanzan excepciones ni se notifican códigos de error explícitos [SWS_CORE_06548].

Concurrencia e interacción

En cuanto al contexto de llamada, deallocate está clasificada como no segura para subprocesos (not thread-safe) [SWS_CORE_06548]. En el concepto de gestión de memoria, esta función se corresponde con el método deallocate de la clase base subyacente ara::core::MemoryResource [SWS_CORE_06504], para la cual se aplican las mismas desviaciones respecto a noexcept y al tratamiento silencioso de errores.

Esta nota de uso fue creada de forma automatizada y se basa exclusivamente en los requisitos de especificación de AUTOSAR Adaptive.

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

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

Record
AUTOSAR/AP/record/SWS_CORE_06548
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CORE_06548@rel:R25-11#2423f41c
Content hash
2423f41c
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Core.pdf#nameddest=SWS_CORE_06548
Status: valid/unmigrated Version: rel:R25-11#d1d0b454 Versionshistorie & Revisions (1 transition, 4 revision)
Current State
valid/unmigrated
Reason
mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record
Campaign
2026-08-13-status-backfill
Active Version
AUTOSAR/AP/record/SWS_CORE_06548@rel:R25-11#d1d0b454
Point-in-Time History:
Recorded Revisions (4):
  • R25-11rel:R25-11#824b5be32026-09-30
  • R23-11rel:R23-11#af3c4e332026-10-14
  • R24-11rel:R24-11#92f9b2332026-10-14
  • R25-11rel:R25-11#d1d0b4542026-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 deallocate_bytes [SWS_CORE_06550]

void deallocate_bytes (void *p, std::size_t nbytes, std::size_t alignment=alignof(std::max_align_t)) noexcept;

As per corresponding usage in [mem.poly.allocator.class] 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: faf22ebd97f2 Procedencia Preguntas abiertas (1)
traducido de la guía alemanagemini-3.8-flash-low · 2026-10-13 · Original en alemán

La función deallocate_bytes de la clase ara::core::PolymorphicAllocator sirve para liberar un área de memoria previamente asignada conforme a [SWS_CORE_06550]. Se proporciona a través del encabezado ara/core/memory_resource.h y se basa fundamentalmente en la semántica de [mem.poly.allocator.class].

La llamada se realiza de forma síncrona y espera los siguientes parámetros según [SWS_CORE_06550]:

  • p: puntero (void*) al área de memoria que se va a liberar.
  • nbytes: tamaño en bytes de la memoria que se va a liberar (std::size_t).
  • alignment: alineación deseada (valor predeterminado alignof(std::max_align_t)).

En cuanto al comportamiento frente a fallos, la implementación presenta desviaciones específicas respecto al estándar: la función está declarada como noexcept y se considera segura frente a excepciones (exception safe). Si la liberación falla, los errores producidos se ignoran de forma silenciosa (silently ignored) según [SWS_CORE_06550]. No se lanzan excepciones ni se proporcionan valores de retorno.

En relación con la concurrencia y las restricciones, la función está especificada explícitamente como no segura para subprocesos (not thread-safe) [SWS_CORE_06550]. Por tanto, es probable que el acceso concurrente a la misma instancia del asignador sin sincronización externa provoque un comportamiento indefinido. Pregunta Q-33c80e3bb50ed64f (abierta)

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

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

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

Record
AUTOSAR/AP/record/SWS_CORE_06550
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CORE_06550@rel:R25-11#509e3b72
Content hash
509e3b72
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Core.pdf#nameddest=SWS_CORE_06550
Status: valid/unmigrated Version: rel:R25-11#7305c652 Versionshistorie & Revisions (1 transition, 4 revision)
Current State
valid/unmigrated
Reason
mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record
Campaign
2026-08-13-status-backfill
Active Version
AUTOSAR/AP/record/SWS_CORE_06550@rel:R25-11#7305c652
Point-in-Time History:
Recorded Revisions (4):
  • R25-11rel:R25-11#b90edcee2026-09-30
  • R23-11rel:R23-11#9a13c45b2026-10-14
  • R24-11rel:R24-11#eeb59aac2026-10-14
  • R25-11rel:R25-11#7305c6522026-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 deallocate_object [SWS_CORE_06552]

template <class T> void deallocate_object (T *p, std::size_t n=1) noexcept;

As per corresponding usage in [mem.poly.allocator.class] except for the following deviations: 1. Function is nullptr 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: d1e41bdb2142 Procedencia Preguntas abiertas (1)
traducido de la guía alemanagemini-3.8-flash-low · 2026-10-13 · Original en alemán

La función de plantilla deallocate_object de la clase ara::core::PolymorphicAllocator sirve para liberar memoria de objetos previamente reservada [SWS_CORE_06552]. Se orienta en el uso estándar de C++ correspondiente según [mem.poly.allocator.class], aunque presenta desviaciones específicas [SWS_CORE_06552].

En lo relativo a parámetros y contexto de llamada, se aplican las siguientes propiedades [SWS_CORE_06552]:

  • Firma: template <class T> void deallocate_object (T *p, std::size_t n=1) noexcept; [SWS_CORE_06552].
  • Cabecera: la función está disponible a través de #include "ara/core/memory_resource.h" [SWS_CORE_06552].
  • Valor de retorno: la operación no devuelve ningún valor de retorno (void) [SWS_CORE_06552].
  • Comportamiento con punteros nulos: como desviación explícita, se especifica que la función surte efecto cuando se pasa nullptr o que admite punteros nulos («Function is nullptr») [SWS_CORE_06552].

En cuanto al tratamiento de errores, la función está declarada como noexcept y se considera segura frente a excepciones (exception safe) [SWS_CORE_06552]. Si una desasignación falla, los errores producidos se ignoran de forma silenciosa («errors will be silently ignored»), de modo que no se propaga ninguna excepción al exterior [SWS_CORE_06552].

Como restricción esencial, deallocate_object está clasificada como no segura para subprocesos (not thread-safe) [SWS_CORE_06552]. En caso de accesos paralelos a la misma instancia de Allocator desde múltiples subprocesos, las llamadas deben protegerse, por lo tanto, mediante mecanismos de sincronización externa.

Este texto ha sido elaborado por una IA y se basa exclusivamente en las especificaciones del release R25-11.

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

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

Record
AUTOSAR/AP/record/SWS_CORE_06552
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CORE_06552@rel:R25-11#5f7b4534
Content hash
5f7b4534
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Core.pdf#nameddest=SWS_CORE_06552
Status: valid/unmigrated Version: rel:R25-11#8e127a90 Versionshistorie & Revisions (1 transition, 4 revision)
Current State
valid/unmigrated
Reason
mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record
Campaign
2026-08-13-status-backfill
Active Version
AUTOSAR/AP/record/SWS_CORE_06552@rel:R25-11#8e127a90
Point-in-Time History:
Recorded Revisions (4):
  • R25-11rel:R25-11#97b0add92026-09-30
  • R23-11rel:R23-11#0e144f892026-10-14
  • R24-11rel:R24-11#30aa2ab62026-10-14
  • R25-11rel:R25-11#8e127a902026-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 delete_object [SWS_CORE_06554]

template <class T> void delete_object (T *p) noexcept(std::is_nothrow_destructible< T >::value);

As per corresponding usage in [mem.poly.allocator.class] except for the following deviations: 1. Function is conditionally 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: c42857d5d063 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 delete_object de la clase ara::core::PolymorphicAllocator sirve, según [SWS_CORE_06554], para la destrucción y liberación de un objeto del tipo T al que apunta el puntero p pasado. La función se proporciona a través del archivo de cabecera #include "ara/core/memory_resource.h" y sigue el comportamiento de [mem.poly.allocator.class] con desviaciones específicas.

En cuanto al contexto de llamada y a la semántica, se aplican las siguientes propiedades:

  • Valor de retorno y excepciones: la función no posee valor de retorno (void). Es condicionalmente segura frente a excepciones (conditionally noexcept) con la especificación noexcept(std::is_nothrow_destructible<T>::value); por tanto, no lanza excepciones siempre que el destructor de T esté declarado como no lanzador [SWS_CORE_06554].
  • Tratamiento de errores: si la operación falla, los errores producidos se ignoran de forma silenciosa (errors will be silently ignored) [SWS_CORE_06554]. Interpretación: en caso de error, los llamadores no reciben, por tanto, ningún mensaje de error, ningún código de error ni ninguna excepción. Pregunta Q-9393b0f68a055e4b (abierta)
  • Seguridad para subprocesos: la operación está especificada como no segura para subprocesos (not thread-safe) [SWS_CORE_06554]. En caso de uso concurrente del mismo asignador a través de varios subprocesos, la sincronización recae sobre el llamador.

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

Header-Datei#include "ara/core/memory_resource.h"
Scopeclass ara::core::PolymorphicAllocator
Exception-Sicherheitconditionally exception safe
Thread-Sicherheitnot thread-safe

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

Record
AUTOSAR/AP/record/SWS_CORE_06554
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CORE_06554@rel:R25-11#3e3b2a13
Content hash
3e3b2a13
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Core.pdf#nameddest=SWS_CORE_06554
Status: valid/unmigrated Version: rel:R25-11#9b4d40a0 Versionshistorie & Revisions (1 transition, 4 revision)
Current State
valid/unmigrated
Reason
mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record
Campaign
2026-08-13-status-backfill
Active Version
AUTOSAR/AP/record/SWS_CORE_06554@rel:R25-11#9b4d40a0
Point-in-Time History:
Recorded Revisions (4):
  • R25-11rel:R25-11#052ca7492026-09-30
  • R23-11rel:R23-11#3c9cbc572026-10-14
  • R24-11rel:R24-11#d8a2d49d2026-10-14
  • R25-11rel:R25-11#9b4d40a02026-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 destroy [SWS_CORE_06556]

template <class T> void destroy (T *p) noexcept(std::is_nothrow_destructible< T >::value);

As per corresponding usage in [mem.poly.allocator.class] except for the following deviations: 1. Function is conditionally noexcept

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

usar

La función miembro de plantilla destroy de la clase ara::core::PolymorphicAllocator ([SWS_CORE_06556]) sirve para destruir un objeto del tipo T al que apunta el puntero p. La función está declarada en la cabecera ara/core/memory_resource.h y sigue fundamentalmente el comportamiento estandarizado de [mem.poly.allocator.class] ([SWS_CORE_06556]). La llamada al método no proporciona valor de retorno y se ejecuta de forma síncrona en el contexto del subproceso llamador. Interpretación: en este caso, cabe suponer que p apunta a un objeto válido instanciado previamente. Pregunta Q-a4faf7034eb683dd (abierta)

Tratamiento de errores y seguridad frente a excepciones

En relación con el tratamiento de errores, la función está clasificada como condicionalmente segura frente a excepciones (conditionally exception safe) ([SWS_CORE_06556]). Como desviación específica respecto al requisito estándar [mem.poly.allocator.class], destroy está declarada condicionalmente con noexcept(std::is_nothrow_destructible<T>::value) ([SWS_CORE_06556]). Siempre que el destructor del tipo T pasado no lance excepciones, la ausencia de excepciones se aplica a toda la llamada; de lo contrario, pueden escapar excepciones resultantes del destructor.

Concurrencia y restricciones

En cuanto al comportamiento de concurrencia, destroy está especificada como no segura para subprocesos (not thread-safe) ([SWS_CORE_06556]). Si varios subprocesos acceden simultáneamente a la misma instancia de ara::core::PolymorphicAllocator o al objeto que se va a destruir, deben establecerse mecanismos de sincronización externa adecuados.

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

Header-Datei#include "ara/core/memory_resource.h"
Scopeclass ara::core::PolymorphicAllocator
Exception-Sicherheitconditionally exception safe
Thread-Sicherheitnot thread-safe

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

Record
AUTOSAR/AP/record/SWS_CORE_06556
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CORE_06556@rel:R25-11#bfa60aca
Content hash
bfa60aca
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Core.pdf#nameddest=SWS_CORE_06556
Status: valid/unmigrated Version: rel:R25-11#abadf693 Versionshistorie & Revisions (1 transition, 4 revision)
Current State
valid/unmigrated
Reason
mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record
Campaign
2026-08-13-status-backfill
Active Version
AUTOSAR/AP/record/SWS_CORE_06556@rel:R25-11#abadf693
Point-in-Time History:
Recorded Revisions (4):
  • R25-11rel:R25-11#b20f3b522026-09-30
  • R23-11rel:R23-11#4cffca7a2026-10-14
  • R24-11rel:R24-11#c0cdac192026-10-14
  • R25-11rel:R25-11#abadf6932026-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 new_object [SWS_CORE_06553]

template <class T, class... CtorArgs> [[nodiscard]] T * new_object (CtorArgs &&... ctor_args) noexcept(std::is_nothrow_constructible< T, CtorArgs... >::value);

As per corresponding usage in [mem.poly.allocator.class] except for the following deviations: 1. Function is conditionally noexcept 2. If unsuccessful: nullptr is returned, instead of raising any Exception

GENERADO POR IA no revisado Modelo: gemini-3.8-flash-medium · Esfuerzo: medium · Temperatura: no controlable · Prompt: d4720bb5fd75 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 de plantilla new_object de la clase ara::core::PolymorphicAllocator (definida en #include "ara/core/memory_resource.h") asigna memoria de forma síncrona y construye un objeto del tipo T con los argumentos de constructor pasados ctor_args [SWS_CORE_06553].

El uso está sujeto a las siguientes determinaciones y desviaciones respecto al estándar [mem.poly.allocator.class] [SWS_CORE_06553]:

  • Llamada y valor de retorno: si la creación del objeto tiene éxito, se devuelve un puntero tipificado T* a la nueva instancia. El atributo [[nodiscard]] obliga a los llamadores a evaluar el valor de retorno.
  • Tratamiento de errores: en caso de fallo, a diferencia de [mem.poly.allocator.class] no se desencadena ninguna excepción, sino que se devuelve nullptr. Por tanto, el llamador debe comprobar obligatoriamente si el puntero resultante es nullptr antes de acceder.
  • Seguridad frente a excepciones: la función está especificada como condicionalmente segura frente a excepciones (conditionally exception safe). Es noexcept si y solo si la propia creación del objeto garantiza que no lanzará ninguna excepción (noexcept(std::is_nothrow_constructible<T, CtorArgs...>::value)).
  • Concurrencia: la función está declarada como no segura para subprocesos (not thread-safe). Interpretación: ante el acceso simultáneo a la misma instancia de ara::core::PolymorphicAllocator, es probable que el llamador sea responsable de una sincronización externa adecuada. Pregunta Q-3d0ecfe34187c91e (abierta)

Esta nota de uso se generó de forma automatizada sobre la base de AUTOSAR R25-11.

Header-Datei#include "ara/core/memory_resource.h"
Scopeclass ara::core::PolymorphicAllocator
Exception-Sicherheitconditionally exception safe
Thread-Sicherheitnot thread-safe

Rückgabewert

TypBeschreibung
T*• If successful: As per corresponding usage in [mem.poly.allocator.class] • 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_06553
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CORE_06553@rel:R25-11#2ccbe33f
Content hash
2ccbe33f
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Core.pdf#nameddest=SWS_CORE_06553
Status: valid/unmigrated Version: rel:R25-11#a6ad2786 Versionshistorie & Revisions (1 transition, 4 revision)
Current State
valid/unmigrated
Reason
mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record
Campaign
2026-08-13-status-backfill
Active Version
AUTOSAR/AP/record/SWS_CORE_06553@rel:R25-11#a6ad2786
Point-in-Time History:
Recorded Revisions (4):
  • R25-11rel:R25-11#d2723bd62026-09-30
  • R23-11rel:R23-11#914b6df22026-10-14
  • R24-11rel:R24-11#700266922026-10-14
  • R25-11rel:R25-11#a6ad27862026-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_00066] Upstream: RS_AP_00145

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

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

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

Parameter (in)

ParameterBeschreibung
otherother PolymorphicAllocator to move from

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

Record
AUTOSAR/AP/record/SWS_CORE_00066
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CORE_00066@rel:R25-11#4226a3fa
Content hash
4226a3fa
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Core.pdf#nameddest=SWS_CORE_00066
Status: valid/unmigrated Version: rel:R25-11#b0c562e4 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_00066@rel:R25-11#b0c562e4
Point-in-Time History:
Recorded Revisions (3):
  • R25-11rel:R25-11#9ab9307f2026-09-30
  • R24-11rel:R24-11#49e75ee42026-10-14
  • R25-11rel:R25-11#b0c562e42026-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_06545]

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

As per corresponding usage in [mem.poly.allocator.class]

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

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

Record
AUTOSAR/AP/record/SWS_CORE_06545
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CORE_06545@rel:R25-11#8e60448a
Content hash
8e60448a
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Core.pdf#nameddest=SWS_CORE_06545
Status: valid/unmigrated Version: rel:R25-11#ebba2fe5 Versionshistorie & Revisions (1 transition, 4 revision)
Current State
valid/unmigrated
Reason
mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record
Campaign
2026-08-13-status-backfill
Active Version
AUTOSAR/AP/record/SWS_CORE_06545@rel:R25-11#ebba2fe5
Point-in-Time History:
Recorded Revisions (4):
  • R25-11rel:R25-11#6662d26d2026-09-30
  • R23-11rel:R23-11#19b7dc922026-10-14
  • R24-11rel:R24-11#9e9fa6da2026-10-14
  • R25-11rel:R25-11#ebba2fe52026-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 resource [SWS_CORE_06557]

MemoryResource * resource () const noexcept;

As per corresponding usage in [mem.poly.allocator.class]

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

El método resource es una función miembro constante de la clase ara::core::PolymorphicAllocator del archivo de cabecera #include "ara/core/memory_resource.h" [SWS_CORE_06557]. Sirve, de acuerdo con la referencia de especificación a [mem.poly.allocator.class], para la obtención síncrona del recurso de memoria asignado [SWS_CORE_06557].

Uso y signatura

La firma de la función es MemoryResource * resource () const noexcept; [SWS_CORE_06557]. La llamada se realiza sin parámetros y de forma síncrona sobre una instancia de ara::core::PolymorphicAllocator. Como valor de retorno, la función proporciona un puntero del tipo MemoryResource* [SWS_CORE_06557]. Interpretación: es probable que el puntero devuelto apunte directamente al recurso de memoria concreto que utiliza el asignador para las operaciones de memoria. Pregunta Q-392683a38a4e490b (abierta)

Tratamiento de errores y concurrencia

  • Seguridad frente a excepciones: la función está declarada como noexcept y clasificada como exception safe [SWS_CORE_06557]. No lanza excepciones y no hay definidos códigos de error específicos.
  • Seguridad para subprocesos: la especificación designa el método explícitamente como thread-safe [SWS_CORE_06557]. Gracias a la calificación como const, el acceso de lectura concurrente a través de múltiples subprocesos es seguro.

Interacción

En el módulo core, resource proporciona la interfaz para consultar el MemoryResource encapsulado por ara::core::PolymorphicAllocator y acceder a sus operaciones [SWS_CORE_06557].

Esta nota de uso fue generada por una IA sobre la base de la especificación AUTOSAR Adaptive R25-11.

Header-Datei#include "ara/core/memory_resource.h"
Scopeclass ara::core::PolymorphicAllocator
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_06557
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CORE_06557@rel:R25-11#eba812b0
Content hash
eba812b0
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Core.pdf#nameddest=SWS_CORE_06557
Status: valid/unmigrated Version: rel:R25-11#95a9a731 Versionshistorie & Revisions (1 transition, 4 revision)
Current State
valid/unmigrated
Reason
mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record
Campaign
2026-08-13-status-backfill
Active Version
AUTOSAR/AP/record/SWS_CORE_06557@rel:R25-11#95a9a731
Point-in-Time History:
Recorded Revisions (4):
  • R25-11rel:R25-11#03dbf6b12026-09-30
  • R23-11rel:R23-11#071c0a122026-10-14
  • R24-11rel:R24-11#4d44fc3f2026-10-14
  • R25-11rel:R25-11#95a9a7312026-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 select_on_container_copy_construction [SWS_CORE_06573]

PolymorphicAllocator select_on_container_copy_construction () const noexcept;

As per corresponding usage in [mem.poly.allocator.class] except for the following deviations: 1. The function is noexcept

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

usar

La función miembro select_on_container_copy_construction pertenece al ámbito de la clase ara::core::PolymorphicAllocator y se declara a través del archivo de cabecera #include "ara/core/memory_resource.h" ([SWS_CORE_06573]). Se llama de forma síncrona para crear una nueva instancia de PolymorphicAllocator durante la construcción por copia de un contenedor ([SWS_CORE_06573]). El comportamiento funcional sigue la directriz [mem.poly.allocator.class] ([SWS_CORE_06573]). Interpretación: es probable que el asignador resultante esté construido por defecto y, por tanto, recurra al recurso de memoria predeterminado en lugar de copiar obligatoriamente el recurso de memoria del contenedor de origen. Pregunta Q-134ed967dc22e133 (abierta)

Tratamiento de errores y seguridad frente a excepciones

Una desviación fundamental respecto a la especificación general de C++ consiste en que la función en AUTOSAR está declarada explícitamente como noexcept ([SWS_CORE_06573]). La ejecución está definida como segura frente a excepciones (exception safe) ([SWS_CORE_06573]). No se prevén códigos de error específicos, valores de retorno para la indicación de errores ni notificaciones a DET o DEM para esta interfaz, ya que se garantiza que la llamada finaliza sin errores.

Concurrencia y restricciones

Según la especificación, la función está clasificada como not thread-safe ([SWS_CORE_06573]). Esto significa que las llamadas simultáneas sobre la misma instancia de PolymorphicAllocator desde múltiples subprocesos sin sincronización externa pueden dar lugar a carreras de datos. Antes de copiar un contenedor en entornos concurrentes, el usuario debe proteger el acceso al objeto asignador.

Esta nota de uso se ha generado de forma automatizada a partir de la especificación de AUTOSAR para la versión R25-11.

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

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

Record
AUTOSAR/AP/record/SWS_CORE_06573
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CORE_06573@rel:R25-11#8bb2c54f
Content hash
8bb2c54f
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Core.pdf#nameddest=SWS_CORE_06573
Status: valid/unmigrated Version: rel:R25-11#23e4ce94 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_06573@rel:R25-11#23e4ce94
Point-in-Time History:
Recorded Revisions (3):
  • R25-11rel:R25-11#f78e279c2026-09-30
  • R24-11rel:R24-11#70871b2b2026-10-14
  • R25-11rel:R25-11#23e4ce942026-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

Documentación de los alias de tipo

alias de tipo value_type [SWS_CORE_06572]

using value_type = Tp;

As per corresponding usage in [mem.poly.allocator.class]

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

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

Record
AUTOSAR/AP/record/SWS_CORE_06572
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CORE_06572@rel:R25-11#e58f96c2
Content hash
e58f96c2
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Core.pdf#nameddest=SWS_CORE_06572
Status: valid/unmigrated Version: rel:R25-11#8c0c50c3 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_06572@rel:R25-11#8c0c50c3
Point-in-Time History:
Recorded Revisions (3):
  • R25-11rel:R25-11#2bb07c522026-09-30
  • R24-11rel:R24-11#92a2e3f52026-10-14
  • R25-11rel:R25-11#8c0c50c32026-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