修复的问题: - math: 修复 Quaternion::Normalize 链接错误 - containers: HashMap 迭代器示例使用不存在的 cbegin/cend,删除冗余构造函数声明 - core: RefCounted 析构函数访问级别修正 (protected) - debug: LogLevelToString 示例返回值大小写修正 - memory: 修正 LinearAllocator::Reallocate 返回 nullptr,ProxyAllocator 统计描述,头文件路径 IAllocator.h -> Allocator.h - resources: Texture::Create mipLevels 参数描述修正 - rhi: 修复多处链接错误,新增缺失的方法文档 - threading: TaskSystem 配置项未实现状态标注,Wait 方法空实现标注
1.0 KiB
1.0 KiB
TaskSystem::Initialize
void Initialize(const TaskSystemConfig& config)
初始化任务系统,创建工作线程并启动任务调度。
参数:
config- 任务系统配置(参见 TaskSystemConfig)
返回: 无
复杂度: O(n),n 为 workerThreadCount
注意:
- 多次调用将先关闭已有系统再重新初始化。
- 应在主线程中调用,在任何任务提交之前完成初始化。
示例:
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 总览 - 返回类总览
- Shutdown - 关闭任务系统