Files
XCEngine/docs/api/threading/task-system/initialize.md

40 lines
1.1 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# TaskSystem::Initialize
```cpp
void Initialize(const TaskSystemConfig& config)
```
初始化任务系统,创建工作线程并启动任务调度。
**参数:**
- `config` - 任务系统配置(参见 TaskSystemConfig
**返回:**
**线程安全:** ❌ (应在主线程初始化)
**复杂度:** O(n)n 为 workerThreadCount
**注意:**
- 多次调用将先关闭已有系统再重新初始化。
- 应在主线程中调用,在任何任务提交之前完成初始化。
**示例:**
```cpp
TaskSystemConfig config;
config.workerThreadCount = std::thread::hardware_concurrency();
config.enableTaskProfiling = true; // 预留配置项(当前未使用)
config.stealTasks = true; // 预留配置项(当前未实现)
config.maxTaskQueueSize = 2048; // 预留配置项(当前未强制限制)
TaskSystem::Get().Initialize(config);
printf("TaskSystem started with %u workers\n",
TaskSystem::Get().GetWorkerThreadCount());
```
## 相关文档
- [TaskSystem 总览](task-system.md) - 返回类总览
- [Shutdown](shutdown.md) - 关闭任务系统