std::pmr::synchronized_pool_resource::do_allocate
来自 cppreference.com
< cpp | memory | synchronized pool resource
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()
时抛出异常,否则不会抛出任何异常。
[编辑] 另请参阅
分配内存 ( std::pmr::memory_resource 的公共成员函数) | |
[虚函数] |
分配内存 ( std::pmr::memory_resource 的虚私有成员函数) |