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
Commentaires
https://aka.ms/ContentUserFeedback.
Bientôt disponible : Tout au long de 2024, nous allons supprimer progressivement GitHub Issues comme mécanisme de commentaires pour le contenu et le remplacer par un nouveau système de commentaires. Pour plus d’informations, consultezEnvoyer et afficher des commentaires pour