Files
XCEngine/docs/api/XCEngine/Threading/TaskSystem/Update.md

900 B

TaskSystem::Update

执行当前积压的主线程回调。

void Update();

行为说明

当前实现会:

  1. m_queueMutex 保护下把 m_mainThreadQueue 整体移动到局部数组。
  2. 清空内部队列。
  3. 在锁外按顺序执行这些回调。

返回值

  • 无。

设计说明

这是一种典型的“后台线程投递,主线程集中消费”模型。商业引擎里资源系统、脚本系统和编辑器工具都经常需要这种回投路径,因为很多对象只能在主线程安全访问。

当前实现限制

  • 当前不会自动调用,需要调用方在主线程帧循环里显式执行。
  • m_mainThreadCondition 当前没有被使用。
  • 当前没有异常隔离;某个回调抛出异常时,会中断后续回调执行路径。

相关文档