---
title: pool_allocator
description: "本章接口为预留接口，后续有可能变更或废弃，不建议开发者使用，开发者无需关注。"
url: https://www.hiascend.com/document/detail/zh/canncommercial/latest/API/aolapi/atlasascendc_api_07_1141.html
sourcePath: /source/zh/canncommercial/900/API/aolapi/atlasascendc_api_07_1141.html
indexId: 5cb164c18d74fd7d77c46a923bb152e8368502c9fee49366775aae409d86a96170
---
# pool_allocator

本章接口为预留接口，后续有可能变更或废弃，不建议开发者使用，开发者无需关注。


**表1 接口列表**

| 接口定义 | 功能说明 |
| --- | --- |
| MallocPtr(size\_t size) | 从内存池中申请size字节的内存。 |
| FreePtr(void \*block) | 将data block释放回内存池。 |
| PoolAllocator() | PoolAllocator构造函数。 |
| PoolAllocator(const PoolAllocator<U> &) | PoolAllocator拷贝构造函数。 |
| allocate(size\_t n) | 从内存池中申请n个T类型大小的内存。 |
| deallocate(T \*p, [[maybe\_unused]] size\_t n) | 将p释放回内存池。 |
| construct(\_Up \*\_\_p, \_Args &&...\_\_args) | 用给定的参数\_\_args和地址\_\_p调用\_Up的构造函数。 |
| destroy(\_Up \*\_\_p) | 调用\_\_p的析构函数。 |
