QtTaskTree::QSequentialTaskTreeRunner Class
class QtTaskTree::QSequentialTaskTreeRunnerUn contrôleur d'exécution séquentielle d'arbres de tâches. En savoir plus...
| En-tête : | #include <qtasktreerunner.h> |
| CMake : | find_package(Qt6 REQUIRED COMPONENTS TaskTree) target_link_libraries(mytarget PRIVATE Qt6::TaskTree) |
| qmake : | QT += tasktree |
| Depuis : | Qt 6.11 |
| Statut : | Aperçu technologique |
Cette classe est en avant-première technologique et est susceptible d'être modifiée.
Fonctions publiques
| QSequentialTaskTreeRunner() | |
| ~QSequentialTaskTreeRunner() | |
| void | cancel() |
| void | cancelCurrent() |
| void | enqueue(const QtTaskTree::Group &recipe, SetupHandler &&setupHandler = {}, DoneHandler &&doneHandler = {}, QtTaskTree::CallDone callDone = QtTaskTree::CallDoneFlag::Always) |
| bool | isRunning() const |
| void | reset() |
| void | resetCurrent() |
Description détaillée
Gère l'exécution séquentielle des arborescences de tâches. Utilisez la méthode enqueue() pour planifier l'exécution d'une recette donnée. Il est garanti qu'une seule arborescence de tâches au maximum s'exécute à un moment donné.
Voir également Task Tree Runners.
Documentation sur les fonctions membres
QSequentialTaskTreeRunner::QSequentialTaskTreeRunner()
Crée un exécuteur d'arborescence de tâches séquentielles.
[noexcept] QSequentialTaskTreeRunner::~QSequentialTaskTreeRunner()
Supprime l'exécuteur d'arborescence de tâches séquentielles. Toute arborescence de tâches éventuellement en cours d'exécution est supprimée et les tâches mises en file d'attente sont retirées. Aucune fonction de gestion des tâches terminées n'est appelée.
Voir également ~QTaskTree().
void QSequentialTaskTreeRunner::cancel()
Annule l'arborescence des tâches en cours d'exécution. Appelle la fonction de gestion « done » de l'arborescence des tâches avec ` DoneWith::Cancel`. Toutes les tâches en file d'attente sont supprimées.
void QSequentialTaskTreeRunner::cancelCurrent()
Annule l'arborescence des tâches en cours d'exécution. Appelle le gestionnaire « done » de l'arborescence des tâches avec DoneWith::Cancel. S'il y a des recettes mises en file d'attente, la recette retirée de la file d'attente est lancée.
template <typename SetupHandler = QtTaskTree::TreeSetupHandler, typename DoneHandler = QtTaskTree::TreeDoneHandler> void QSequentialTaskTreeRunner::enqueue(const QtTaskTree::Group &recipe, SetupHandler &&setupHandler = {}, DoneHandler &&doneHandler = {}, QtTaskTree::CallDone callDone = QtTaskTree::CallDoneFlag::Always)
Planifie l'exécution de l'recipe. Si aucune arborescence de tâches n'est en cours d'exécution, le « runner » lance une nouvelle arborescence de tâches de manière synchrone ; dans le cas contraire, l'recipe est mise en file d'attente. Lorsque l'arborescence de tâches en cours d'exécution est terminée, le « runner » lance une nouvelle arborescence de tâches avec une recette retirée de la file d'attente. Appelle setupHandler lorsque la nouvelle arborescence de tâches est sur le point d'être lancée. Appelle ` doneHandler ` lorsque l'arborescence de tâches est terminée. La méthode ` doneHandler ` est appelée conformément à l'callDone` transmise.
bool QSequentialTaskTreeRunner::isRunning() const
Indique si le programme d'exécution séquentielle des arborescences de tâches est en train d'exécuter une arborescence de tâches.
void QSequentialTaskTreeRunner::reset()
Réinitialise l'arborescence des tâches en cours d'exécution. Aucun gestionnaire de fin de tâche de l'arborescence n'est appelé. Toutes les tâches en file d'attente sont supprimées.
void QSequentialTaskTreeRunner::resetCurrent()
Réinitialise l'arborescence des tâches en cours d'exécution. Aucun gestionnaire de fin de tâche de l'arborescence n'est appelé. S'il y a des recettes mises en file d'attente, la recette retirée de la file d'attente est lancée.
© 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.