std::pmr::unsynchronized_pool_resource::do_allocate
< cpp | memory | unsynchronized pool resource
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 的虚私有成员函数) |