UnrealEngine中的在线异步任务管理器

文章字数:271

简介

FOnlineAsyncTaskManager是每个在线子系统中异步操作的基础。

任务管理器在其自己的线程上运行,同时管理FOnlineAsyncTasks的串行队列和并行队列。

对于串行队列,通过以下方式执行:

  • 游戏主线程GameThread
    • 初始化Initialize()
  • 网络线程OnlineThread
    • 执行Tick()直到IsDone()
    • 将任务添加到出队列OutQueue
  • 游戏主线程GameThread
    • 完成Finalize()
    • 触发回调TriggerDelegates()

对于并行队列,流程与上述类似,不过其中的任务并不会等待先前的任务完成。

加载中...