Namespaces
Variants

free_aligned_sized

From cppreference.net
Definido en el encabezado <stdlib.h>
void free_aligned_sized ( void * ptr, size_t alignment, size_t size ) ;
(desde C23)

Si ptr es un puntero nulo o el resultado obtenido de una llamada a aligned_alloc , donde alignment es igual a la alineación de asignación solicitada y size es igual al tamaño de asignación solicitado, esta función es equivalente a free ( ptr ) . De lo contrario, el comportamiento es indefinido.

El resultado de una llamada a malloc , calloc , o realloc no puede pasarse a free_aligned_sized .

free_aligned_sized es seguro para hilos: se comporta como si solo accediera a las ubicaciones de memoria visibles a través de su argumento, y no a ningún almacenamiento estático.

Una llamada a free_aligned_sized que desasigna una región de memoria se-sincroniza-con una llamada a cualquier función de asignación posterior que asigne la misma región o una parte de la misma región de memoria. Esta sincronización ocurre después de cualquier acceso a la memoria por parte de la función desasignadora y antes de cualquier acceso a la memoria por parte de la función de asignación. Existe un único orden total de todas las funciones de asignación y desasignación que operan sobre cada región particular de memoria.

Contenidos

Parámetros

ptr - puntero a la memoria para desasignar
alignment - alineación de la memoria para desasignar
size - tamaño de la memoria para desasignar

Valor de retorno

(ninguno)

Ejemplo

Referencias

  • Estándar C23 (ISO/IEC 9899:2024):
  • 7.24.3.5 La función free_sized (p: 366)

Véase también

asigna memoria alineada
(función)
desasigna memoria previamente asignada
(función)
desasigna memoria dimensionada previamente asignada
(función)
asigna memoria
(función)