Files
XCEngine/docs/api/XCEngine/Memory/PoolAllocator/Destructor.md

700 B

PoolAllocator::Destructor

销毁整个池并释放底层大块内存。

~PoolAllocator() override;

行为说明

当前实现只做一件事:

std::free(m_memory);

它不会遍历池中的对象,也不会为池中存放的 C++ 对象调用析构函数。换句话说,PoolAllocator 只负责原始内存块,不负责对象生命周期管理。

返回值

  • 无。

使用建议

  • 如果 block 中放的是需要析构的对象,应由调用方先显式析构对象,再销毁分配器。
  • 分配器销毁后,之前返回的所有 block 指针都会变成悬空指针。

相关文档