docs: 修正 API 文档准确性 (第四轮检查)

修复问题:
- containers: HashMap 实现描述修正
- debug: XE_LOG 宏参数顺序修正
- memory: ProxyAllocator 统计示例修正, PoolAllocator allocate size 检查描述
- resources: ResourceManager 缺失 UnloadGroup 方法
- rhi: D3D12 格式枚举名称修正, Texture Format 枚举补全, ResourceStates 补充
- threading: TaskGroup GetProgress/Wait/Cancel 实现限制说明
This commit is contained in:
2026-03-19 00:43:16 +08:00
parent 870cb3116e
commit 82cf147817
13 changed files with 41 additions and 21 deletions

View File

@@ -4,10 +4,10 @@
void* Allocate(size_t size, size_t alignment = 0) override;
```
从内存池中分配一个空闲块。此方法忽略 `size` 参数,始终分配一个固定大小的块。如果池中没有空闲块,返回 `nullptr`。分配操作从空闲链表头部取出一个块。
从内存池中分配一个空闲块。每次分配一个固定大小的块。如果 `size` 超过块大小或池中没有空闲块,返回 `nullptr`。分配操作从空闲链表头部取出一个块。
**参数:**
- `size` - 被忽略(始终分配固定块大小)
- `size` - 请求的大小,如果超过构造时指定的块大小则分配失败
- `alignment` - 被忽略(构造时确定)
**返回:** 分配成功返回块指针,池空返回 `nullptr`

View File

@@ -29,11 +29,10 @@ proxy.Free(p1);
proxy.Free(p2);
const auto& stats = proxy.GetStats();
// totalFreed 累加了每次释放时的 allocationCount
// totalFreed 累加了每次释放时的 allocationCount(次数,非字节)
// allocationCount 最终为 0
printf("Total allocated: %zu, Total freed: %zu, Current: %zu\n",
stats.totalAllocated, stats.totalFreed,
stats.totalAllocated - stats.totalFreed);
printf("Total allocated: %zu bytes, Freed count: %zu, Current count: %zu\n",
stats.totalAllocated, stats.totalFreed, stats.allocationCount);
```
## 相关文档

View File

@@ -27,12 +27,12 @@ proxy.Free(proxy.Allocate(256));
const ProxyAllocator::Stats& stats = proxy.GetStats();
printf("Total allocated: %zu bytes\n", stats.totalAllocated);
printf("Total freed: %zu bytes\n", stats.totalFreed);
printf("Total freed: %zu times\n", stats.totalFreed);
printf("Peak allocated: %zu bytes\n", stats.peakAllocated);
printf("Allocation count: %zu\n", stats.allocationCount);
printf("Memory overhead: %zu bytes\n", stats.memoryOverhead);
printf("Current in use: %zu bytes\n",
stats.totalAllocated - stats.totalFreed);
stats.totalAllocated - stats.allocationCount * sizeof(/* typical block */ size_t));
```
## 相关文档