1.2 KiB
1.2 KiB
TaskSystem::Initialize
初始化任务系统并创建工作线程。
void Initialize(const TaskSystemConfig& config);
行为说明
当前实现会:
- 从
config.workerThreadCount读取目标线程数。 - 当该值为
0时,退回到std::thread::hardware_concurrency()。 - 若仍为
0,最终使用2。 - 把
m_running设为true。 - 启动对应数量的
std::thread,每个线程执行内部WorkerThread()循环。
参数
config- 任务系统初始化配置。
返回值
- 无。
当前实现限制
- 当前只真正使用
workerThreadCount,其余配置字段都会被忽略。 - 当前没有防止重复初始化的保护;多次调用会继续往
m_workerThreads里追加线程。 - 当前不会把
m_shutdown重置回false,因此一旦执行过 Shutdown,再次Initialize()的行为是不完整的。 - 当前不会清空历史队列或主线程回调队列。
- 当前不会给工作线程命名,也没有线程绑定、栈大小或亲和性设置。