threading/: - Rename 19 camelCase method files to hyphenated names - task-system: createtaskgroup→create-task-group, etc. - tasksystemconfig: enabletaskprofiling→enable-task-profiling, etc. - thread: getcurrentid→get-current-id, etc. - task: addref→add-ref, getid→get-id, etc. math/: - Rename underscore operator files to hyphenated - vector3: operator_add→operator-add, etc. - matrix4: gettranslation→get-translation, etc. - vector4: tovector3→to-vector3, constructor_vector3→constructor-vector3 - sphere: sphere_constructor→sphere-constructor, etc. memory/: - Remove duplicate memorymanager/ folder (kept manager/ which was correct) core/: - filewriter: Consolidate ctor-default.md and ctor-file.md into constructor.md - Rename dtor.md→destructor.md debug/: - filelogsink: Rename construct.md→constructor.md, ~filelogsink.md→destructor.md All overview pages updated with new file references.
42 lines
899 B
Markdown
42 lines
899 B
Markdown
# TaskSystem::CreateTaskGroup
|
||
|
||
```cpp
|
||
TaskGroup* CreateTaskGroup()
|
||
```
|
||
|
||
创建一个任务组用于批量管理多个任务。
|
||
|
||
**参数:** 无
|
||
|
||
**返回:** `TaskGroup*` - 新创建的任务组指针
|
||
|
||
**线程安全:** ✅ (内部使用 SpinLock 保护)
|
||
|
||
**复杂度:** O(1)
|
||
|
||
**注意:**
|
||
- 任务组必须通过 DestroyTaskGroup 显式销毁。
|
||
- 任务组的所有权归调用者,TaskSystem 不负责销毁。
|
||
|
||
**示例:**
|
||
|
||
```cpp
|
||
TaskGroup* group = TaskSystem::Get().CreateTaskGroup();
|
||
|
||
group->AddTask([]() { LoadTextures(); });
|
||
group->AddTask([]() { LoadModels(); });
|
||
group->AddTask([]() { LoadAudio(); });
|
||
|
||
group->SetCompleteCallback([]() {
|
||
printf("All resources loaded!\n");
|
||
});
|
||
|
||
group->Wait();
|
||
TaskSystem::Get().DestroyTaskGroup(group);
|
||
```
|
||
|
||
## 相关文档
|
||
|
||
- [TaskSystem 总览](task-system.md) - 返回类总览
|
||
- [DestroyTaskGroup](destroytaskgroup.md) - 销毁任务组
|