Spec-Zone.ru › C++

std::pmr::unsynchronized_pool_resource::do_allocate

virtual void* do_allocate( std::size_t bytes, std::size_t alignment );
(с C++17)

Выделяет память.

Если выбранный пул для блока размером bytes не может удовлетворить запрос из своих внутренних структур данных, вызывает allocate() у базового ресурса памяти для получения памяти.

Если запрашиваемый размер больше, чем может обработать самый большой пул, память выделяется вызовом allocate() у базового ресурса памяти.

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

Указатель на выделенную память размером как минимум bytes байт, выровненную по указанному alignment, если такое выравнивание поддерживается, и по alignof(std::max_align_t) в противном случае.

Исключения

Ничего не выбрасывает, если вызов allocate() у базового ресурса памяти не вызывает исключение.

См. также

allocate
выделяет память
(общедоступный член-функция std::pmr::memory_resource)
do_allocate
[virtual]
выделяет память
(виртуальная закрытая функция-член std::pmr::memory_resource)

© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/w/cpp/memory/unsynchronized_pool_resource/do_allocate

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API