std::pmr::unsynchronized_pool_resource::do_allocate
来自 cppreference.cn
< cpp | memory | unsynchronized 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 的公共成员函数) | |
[virtual] |
分配内存 ( std::pmr::memory_resource 的虚私有成员函数) |