std::pmr::unsynchronized_pool_resource::do_allocate
来自cppreference.com
< cpp | memory | unsynchronized
pool resource
动态内存管理
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
std::pmr::unsynchronized_pool_resource
| 公开成员函数 | ||||
| 受保护成员函数 | ||||
|
unsynchronized_pool_resource::do_allocate
|
||||
|
virtual
void*
do_allocate(std::size_t
bytes, std::size_t
alignment);
|
(C++17 起) | |
分配存储。
若为 bytes 大小的块所选的池不足以满足来自其内部数据结构的请求,则调用上游 memory_resources 上的
allocate() 以获得内存。
若请求的大小大于最大的池所能处理者,则通过调用上游 memory_resources 上的 allocate() 分配内存。
返回值
指向至少有 bytes 字节大小,若支持这种对齐则对齐到指定的 alignment ,否则对齐到
alignof(std::max_align_t) 的被分配存储。
异常
除非上游内存资源上的 allocate() 调用抛出异常,否则不抛出。
参阅
| 分配内存 ( std::pmr::memory_resource
的公开成员函数) |
|
|
[虚]
|
分配内存 ( std::pmr::memory_resource
的虚私有成员函数) |