33 lines
808 B
Markdown
33 lines
808 B
Markdown
# PoolAllocator::GetPeakAllocated
|
|
|
|
```cpp
|
|
size_t GetPeakAllocated() const override;
|
|
```
|
|
|
|
返回峰值分配的内存总量(字节)。由于池在构造时预分配所有块,峰值即为 `m_totalBlocks * m_blockSize`。
|
|
|
|
**参数:** 无
|
|
|
|
**返回:** 内存池总容量(字节)
|
|
|
|
**复杂度:** O(1)
|
|
|
|
**示例:**
|
|
|
|
```cpp
|
|
#include <XCEngine/Memory/PoolAllocator.h>
|
|
|
|
PoolAllocator pool(sizeof(int), 100);
|
|
|
|
size_t peak = pool.GetPeakAllocated(); // 100 * sizeof(int)
|
|
|
|
// 即使分配了部分块,峰值仍然是总容量
|
|
void* block1 = pool.Allocate();
|
|
void* block2 = pool.Allocate();
|
|
size_t current = pool.GetTotalAllocated(); // 2 * sizeof(int)
|
|
peak = pool.GetPeakAllocated(); // 100 * sizeof(int)
|
|
```
|
|
|
|
## 相关文档
|
|
|
|
- [PoolAllocator 总览](pool-allocator.md) - 返回类总览 |