本页内容

Qt TaskTree

Qt TaskTree 提供了一种声明式方法,用于构建和执行异步任务工作流,并包含适当的错误处理和执行策略。

注意: 6.12 版本中的Qt TaskTree 处于技术预览阶段,其 API 不包含在Qt 的兼容性承诺范围内。

入门

Qt TaskTree 允许您创建具有不同执行策略、并行/顺序执行以及适当错误处理功能的复杂任务层次结构。

关键概念:

  • 配方(Recipes)——对任务工作流的声明式描述。
  • 组— 用于定义子任务执行策略的容器。
  • 存储- 用于在任务之间共享数据的线程局部存储系统。
  • 迭代器——支持循环和任务的重复执行。

使用该模块

要使用 Qt 模块的 C++ API,需要将模块库链接到项目中,既可以直接链接,也可以通过其他依赖项间接链接。包括CMake和qmake 在内的多种构建工具都提供了专门的支持。

使用 CMake 构建

使用find_package() 命令在Qt6 软件包中定位所需的模块组件:

find_package(Qt6 REQUIRED COMPONENTS TaskTree)
target_link_libraries(mytarget PRIVATE Qt6::TaskTree)

更多详细信息,请参阅《使用 CMake 构建》概述。

使用 qmake 构建

要配置模块以便使用 qmake 进行构建,请在项目的 .pro 文件中将该模块作为QT 变量的值添加:

QT += tasktree

任务适配器

该模块包含若干用于常见操作的内置任务适配器:

工作流策略

组支持不同的工作流策略来处理任务结果:

示例

参考

许可证

Qt TaskTree 模块可通过The Qt Company 获取商业许可。此外,该模块还提供自由软件许可:GNU 较少通用公共许可证第 3 版(LGPLv3)或GNU 通用公共许可证第 2 版(GPLv2)。更多详情请参阅Qt 许可条款。

© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.