max_fixed_size (Clase)
Describe un objeto de clase máxima que limita un objeto freelist a una longitud máxima fija.
Sintaxis
template <std::size_t Max>
class max_fixed_size
Parámetros
Máx.
Clase máxima que determina el número máximo de elementos que se van a almacenar en freelist
.
Constructores
Constructor | Descripción |
---|---|
max_fixed_size | Construye un objeto de tipo max_fixed_size . |
Funciones miembro
Función de miembro | Descripción |
---|---|
allocated | Aumenta el número de bloques de memoria asignada. |
deallocated | Reduce el número de bloques de memoria asignada. |
full | Devuelve un valor que especifica si se deben agregar más bloques de memoria a la lista libre. |
released | Reduce el número de bloques de memoria de la lista libre. |
saved | Aumenta el número de bloques de memoria de la lista libre. |
Requisitos
Encabezado:<allocators>
Espacio de nombres: stdext
max_fixed_size::allocated
Aumenta el número de bloques de memoria asignada.
void allocated(std::size_t _Nx = 1);
Parámetros
_Nx
Valor de incremento.
Comentarios
La función miembro no hace nada. Se llama a esta función miembro después de cada vez que cache_freelist::allocate
realiza una llamada correcta al operador new
. El argumento _Nx es el número de bloques de memoria del fragmento asignado por el operador new
.
max_fixed_size::d elocated
Reduce el número de bloques de memoria asignada.
void deallocated(std::size_t _Nx = 1);
Parámetros
_Nx
Valor de incremento.
Comentarios
La función miembro no hace nada. Se llama a esta función miembro después de cada vez que cache_freelist::deallocate
realiza una llamada al operador delete
. El argumento _Nx es el número de bloques de memoria del fragmento desasignado por el operador delete
.
max_fixed_size::full
Devuelve un valor que especifica si se deben agregar más bloques de memoria a la lista libre.
bool full();
Valor devuelto
true
si Max <= _Nblocks
; de lo contrario, false
.
Comentarios
Se llama a esta función miembro mediante cache_freelist::deallocate
. Si la llamada devuelve true
, deallocate
coloca el bloque de memoria en la lista libre. Si devuelve False, deallocate
llama al operador delete
para que desasigne el bloque.
max_fixed_size::max_fixed_size
Construye un objeto de tipo max_fixed_size
.
max_fixed_size();
Comentarios
Este constructor inicializa el valor almacenado _Nblocks
en cero.
max_fixed_size::released
Reduce el número de bloques de memoria de la lista libre.
void released();
Comentarios
Disminuye el valor almacenado _Nblocks
. La función miembro released
de la clase máxima actual se llama mediante cache_freelist::allocate
cada vez que quita un bloque de memoria de la lista libre.
max_fixed_size::saved
Aumenta el número de bloques de memoria de la lista libre.
void saved();
Comentarios
Esta función miembro aumenta el valor almacenado _Nblocks
. Esta función miembro se llama mediante cache_freelist::deallocate
cada vez que coloca un bloque de memoria en la lista libre.