Sur cette page

Qt TaskTree

Qt TaskTree fournit un moyen déclaratif de composer et d'exécuter des flux de tâches asynchrones avec une gestion des erreurs et des politiques d'exécution appropriées.

Remarque : Qt TaskTree dans la version 6.11 est en aperçu technologique, ce qui exclut son API des promesses de compatibilité de Qt.

Pour commencer

Qt TaskTree vous permet de créer des hiérarchies de tâches complexes avec différentes politiques d'exécution, une exécution parallèle/séquentielle et une gestion des erreurs appropriée.

Concepts clés :

  • Recettes - descriptions déclaratives des flux de travail des tâches.
  • Groupes - Conteneurs qui définissent les politiques d'exécution pour les tâches enfants.
  • Stockage - Système de stockage local pour le partage des données entre les tâches.
  • Itérateurs - Prise en charge des boucles et de l'exécution des tâches répétitives.

Utilisation du module

L'utilisation de l'API C++ d'un module Qt nécessite l'établissement d'un lien avec la bibliothèque du module, soit directement, soit par l'intermédiaire d'autres dépendances. Plusieurs outils de construction disposent d'un support dédié à cet effet, notamment CMake et qmake.

Construction avec CMake

Utilisez la commande find_package() pour localiser le composant de module nécessaire dans le paquetage Qt6:

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

Pour plus de détails, voir l'aperçu de la construction avec CMake.

Construction avec qmake

Pour configurer le module en vue de sa construction avec qmake, ajoutez le module en tant que valeur de la variable QT dans le fichier .pro du projet :

QT += tasktree

Adaptateurs de tâches

Le module comprend plusieurs adaptateurs de tâches intégrés pour les opérations courantes :

Politiques de flux de travail

Les groupes prennent en charge différentes politiques de flux de travail pour la gestion des résultats des tâches :

Exemples de l'arbre des tâches

Référence

Licences

Le module Qt TaskTree est disponible sous licence commerciale auprès de The Qt Company. Il est également disponible sous des licences de logiciel libre : La licence GNU Lesser General Public License, version 3, ou la licence GNU General Public License, version 2. Voir Qt Licensing pour plus de détails.

© 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.