docs: rebuild Threading API content

This commit is contained in:
2026-03-26 20:59:59 +08:00
parent 9a2d77b81d
commit 8f486611d5
78 changed files with 1648 additions and 1061 deletions

View File

@@ -1,29 +1,32 @@
# TaskGroup::~TaskGroup()
# TaskGroup::~TaskGroup
销毁对象并释放相关资源
销毁任务组对象。
```cpp
~TaskGroup();
```
该方法声明于 `XCEngine/Threading/TaskGroup.h`,当前页面用于固定 `TaskGroup` 类目录下的方法级 canonical 路径。
## 行为说明
**参数:**
当前析构函数是默认实现,不包含额外清理逻辑
**返回:** `void` - 无返回值
## 返回值
**示例:**
- 无。
```cpp
#include <XCEngine/Threading/TaskGroup.h>
## 当前实现限制
void Example() {
XCEngine::Threading::TaskGroup object;
// 对象离开作用域时会自动触发析构
}
```
- 当前不会释放 [AddTask](AddTask.md) 存入的裸任务指针。
- 如果你通过 `AddTask(std::unique_ptr<ITask>)` 添加了任务,`TaskGroup` 会在添加时 `release()``unique_ptr` 所有权,而析构时又不回收,这会导致泄漏。
- 当前析构也不会自动调用 [Cancel](Cancel.md) 或 [Wait](Wait.md)
## 使用建议
- 如果任务组来自 [TaskSystem::CreateTaskGroup](../TaskSystem/CreateTaskGroup.md),应通过 [TaskSystem::DestroyTaskGroup](../TaskSystem/DestroyTaskGroup.md) 销毁其外层所有权。
- 但即便如此,当前任务对象自身的所有权问题仍然存在,`DestroyTaskGroup()` 也无法补救 `TaskGroup` 内部已经泄漏的裸指针。
## 相关文档
- [返回类总览](TaskGroup.md)
- [返回模块目录](../Threading.md)
- [返回类总览](TaskGroup.md)
- [AddTask](AddTask.md)
- [TaskSystem::DestroyTaskGroup](../TaskSystem/DestroyTaskGroup.md)