max_fixed_size – třída
Popisuje objekt maximální třídy , který omezuje objekt freelist na pevnou maximální délku.
Syntaxe
template <std::size_t Max>
class max_fixed_size
Parametry
Max
Maximální třída, která určuje maximální počet prvků, které mají být uloženy freelist
v souboru .
Konstruktory
Konstruktor | Popis |
---|---|
max_fixed_size | Vytvoří objekt typu max_fixed_size . |
Členské funkce
Členová funkce | Popis |
---|---|
přidělený | Zvýší počet přidělených bloků paměti. |
uvolnil | Sníží počet přidělených bloků paměti. |
plný | Vrátí hodnotu, která určuje, zda se má do bezplatného seznamu přidat více bloků paměti. |
uvolněný | Sníží počet bloků paměti v seznamu volných položek. |
uložený | Zvýší počet bloků paměti v seznamu volných položek. |
Požadavky
Záhlaví:<alokátory>
Namespace: stdext
max_fixed_size::přiděleno
Zvýší počet přidělených bloků paměti.
void allocated(std::size_t _Nx = 1);
Parametry
_Nx
Hodnota přírůstku.
Poznámky
Členová funkce nic nedělá. Tato členová funkce je volána po každém úspěšném volání operátorem cache_freelist::allocate
new
. Argument _Nx je počet paměťových bloků v bloku přiděleném operátorem new
.
max_fixed_size::d alokováno
Sníží počet přidělených bloků paměti.
void deallocated(std::size_t _Nx = 1);
Parametry
_Nx
Hodnota přírůstku.
Poznámky
Členová funkce nic nedělá. Tato členová funkce je volána po každém volání operátorem cache_freelist::deallocate
delete
. Argument _Nx je počet bloků paměti v bloku bloků uvolněných operátorem delete
.
max_fixed_size::full
Vrátí hodnotu, která určuje, zda se má do bezplatného seznamu přidat více bloků paměti.
bool full();
Návratová hodnota
true
v opačném případě Max <= _Nblocks
false
.
Poznámky
Tato členová funkce je volána .cache_freelist::deallocate
Pokud volání vrátí true
, deallocate
umístí blok paměti do volného seznamu; pokud vrátí false, deallocate
zavolá operátor delete
uvolnit blok.
max_fixed_size::max_fixed_size
Vytvoří objekt typu max_fixed_size
.
max_fixed_size();
Poznámky
Tento konstruktor inicializuje uloženou hodnotu _Nblocks
na nulu.
max_fixed_size::vydáno
Sníží počet bloků paměti v seznamu volných položek.
void released();
Poznámky
Dekrementuje uloženou hodnotu _Nblocks
. Členová released
funkce aktuální maximální třídy je volána cache_freelist::allocate
pokaždé, když odebere blok paměti z volného seznamu.
max_fixed_size::saved
Zvýší počet bloků paměti v seznamu volných položek.
void saved();
Poznámky
Tato členová funkce zvýší uloženou hodnotu _Nblocks
. Tato členová funkce je volána cache_freelist::deallocate
pokaždé, když vloží blok paměti do bezplatného seznamu.