40 lines
1.1 KiB
Markdown
40 lines
1.1 KiB
Markdown
# 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) - 关闭任务系统
|