Partager via


max_fixed_size, classe

Décrit un objet de classe max qui limite un objet freelist à une longueur maximale fixe.

Syntaxe

template <std::size_t Max>
class max_fixed_size

Paramètres

Max
Classe maximale qui détermine le nombre maximal d’éléments à stocker dans la freelist.

Constructeurs

Constructeur Description
max_fixed_size Construit un objet de type max_fixed_size.

Fonctions Membre

Fonction membre Description
allocated Incrémente le nombre de blocs de mémoire alloués.
deallocated Décrémente le nombre de blocs de mémoire alloués.
full Retourne une valeur qui indique si davantage de blocs de mémoire doivent être ajoutés à la liste libre.
released Décrémente le nombre de blocs de mémoire dans la liste libre.
saved Incrémente le nombre de blocs de mémoire dans la liste libre.

Spécifications

Header :<allocators>

Espace de noms : stdext

max_fixed_size ::allocation

Incrémente le nombre de blocs de mémoire alloués.

void allocated(std::size_t _Nx = 1);

Paramètres

_Nx
Valeur d’incrément.

Notes

La fonction membre ne fait rien. Cette fonction membre est appelée après chaque appel réussi par cache_freelist::allocate à l’opérateur new. L’argument _Nx correspond au nombre de blocs de mémoire dans le bloc alloué par l’opérateur new.

max_fixed_size ::d allouée

Décrémente le nombre de blocs de mémoire alloués.

void deallocated(std::size_t _Nx = 1);

Paramètres

_Nx
Valeur d’incrément.

Notes

La fonction membre ne fait rien. Cette fonction membre est appelée après chaque appel par cache_freelist::deallocate à l’opérateur delete. L’argument _Nx correspond au nombre de blocs de mémoire dans le bloc libéré par l’opérateur delete.

max_fixed_size ::full

Retourne une valeur qui indique si davantage de blocs de mémoire doivent être ajoutés à la liste libre.

bool full();

Valeur de retour

true si Max <= _Nblocks ; sinon, false.

Notes

Cette fonction membre est appelée par cache_freelist::deallocate. Si l’appel retourne true, deallocate place le bloc de mémoire dans la liste libre ; s’il retourne false, deallocate appelle l’opérateur delete pour libérer le bloc.

max_fixed_size ::max_fixed_size

Construit un objet de type max_fixed_size.

max_fixed_size();

Notes

Ce constructeur initialise la valeur stockée _Nblocks à zéro.

max_fixed_size ::released

Décrémente le nombre de blocs de mémoire dans la liste libre.

void released();

Notes

Décrémente la valeur stockée _Nblocks. La fonction membre released de la classe max actuelle est appelée par cache_freelist::allocate chaque fois qu’elle supprime un bloc de mémoire de la liste libre.

max_fixed_size ::saved

Incrémente le nombre de blocs de mémoire dans la liste libre.

void saved();

Notes

Cette fonction membre incrémente la valeur stockée _Nblocks. Cette fonction membre est appelée par cache_freelist::deallocate chaque fois qu’elle place un bloc de mémoire dans la liste libre.

Voir aussi

<allocators>