Класс max_variable_sizemax_variable_size Class

Описывает объект max class, который ограничивает максимальную длину объекта freelist до значения, приблизительно пропорционального количеству выделенных блоков памяти.Describes a max class object that limits a freelist object to a maximum length that is roughly proportional to the number of allocated memory blocks.

СинтаксисSyntax

class max_variable_size

КонструкторыConstructors

КонструкторConstructor ОписаниеDescription
max_variable_sizemax_variable_size Создает объект типа max_variable_size.Constructs an object of type max_variable_size.

Функции элементовMember functions

Функция-членMember function ОписаниеDescription
allocatedallocated Увеличивает счетчик выделенных блоков памяти.Increments the count of allocated memory blocks.
освобожденаdeallocated Уменьшает счетчик выделенных блоков памяти.Decrements the count of allocated memory blocks.
fullfull Возвращает значение, указывающее, следует ли добавить дополнительные блоки памяти для свободного списка.Returns a value that specifies whether more memory blocks should be added to the free list.
освободилreleased Уменьшает количество блоков памяти в свободном списке.Decrements the count of memory blocks on the free list.
savedsaved Увеличивает количество блоков памяти в свободном списке.Increments the count of memory blocks on the free list.

ТребованияRequirements

Заголовок:<allocators>Header: <allocators>

Пространство имен: stdextNamespace: stdext

max_variable_size:: выделеноmax_variable_size::allocated

Увеличивает счетчик выделенных блоков памяти.Increments the count of allocated memory blocks.

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

ПараметрыParameters

_Nx_Nx
Значение приращения.The increment value.

КомментарииRemarks

Эта функция члена добавляет _Nx к сохраненному значению _Nallocs .This member function adds _Nx to the stored value _Nallocs. Эта функция-член вызывается после каждого успешного вызова cache_freelist::allocate оператором new .This member function is called after each successful call by cache_freelist::allocate to operator new. Аргумент _Nx — число блоков памяти в блоке, выделенном оператором new .The argument _Nx is the number of memory blocks in the chunk allocated by operator new.

max_variable_size::d еаллокатедmax_variable_size::deallocated

Уменьшает счетчик выделенных блоков памяти.Decrements the count of allocated memory blocks.

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

ПараметрыParameters

_Nx_Nx
Значение приращения.The increment value.

КомментарииRemarks

Функция члена вычитает _Nx из сохраненного значения _Nallocs .The member function subtracts _Nx from the stored value _Nallocs. Эта функция-член вызывается после каждого вызова cache_freelist::deallocate оператором delete .This member function is called after each call by cache_freelist::deallocate to operator delete. Аргумент _Nx — число блоков памяти в блоке, освобожденных оператором delete .The argument _Nx is the number of memory blocks in the chunk deallocated by operator delete.

max_variable_size:: Fullmax_variable_size::full

Возвращает значение, указывающее, следует ли добавить дополнительные блоки памяти для свободного списка.Returns a value that specifies whether more memory blocks should be added to the free list.

bool full();

Возвращаемое значениеReturn Value

true Если _Nallocs / 16 + 16 <= _Nblocks .true if _Nallocs / 16 + 16 <= _Nblocks.

КомментарииRemarks

Эта функция-член вызывается cache_freelist::deallocate.This member function is called by cache_freelist::deallocate. Если вызов возвращает true , deallocate помещает блок памяти в свободный список; если возвращается значение false, deallocate вызывает оператор delete для освобождения блока.If the call returns true, deallocate puts the memory block on the free list; if it returns false, deallocate calls operator delete to deallocate the block.

max_variable_size:: max_variable_sizemax_variable_size::max_variable_size

Создает объект типа max_variable_size.Constructs an object of type max_variable_size.

max_variable_size();

КомментарииRemarks

Конструктор инициализирует сохраненные значения _Nblocks и _Nallocs нулями.The constructor initializes the stored values _Nblocks and _Nallocs to zero.

max_variable_size:: Releasedmax_variable_size::released

Уменьшает количество блоков памяти в свободном списке.Decrements the count of memory blocks on the free list.

void released();

КомментарииRemarks

Эта функция-член уменьшает хранимое значение _Nblocks.This member function decrements the stored value _Nblocks. Функция-член released текущего класса max вызывается cache_freelist::allocate каждый раз при удалении блока памяти из свободного списка.The released member function of the current max class is called by cache_freelist::allocate whenever it removes a memory block from the free list.

max_variable_size:: сохраненmax_variable_size::saved

Увеличивает количество блоков памяти в свободном списке.Increments the count of memory blocks on the free list.

void saved();

КомментарииRemarks

Эта функция-член увеличивает хранимое значение _Nblocks.This member function increments the stored value _Nblocks. Она вызывается cache_freelist::deallocate каждый раз при помещении блока памяти в свободный список.This member function is called by cache_freelist::deallocate whenever it puts a memory block on the free list.

См. также разделSee also

<allocators>