- Extending Qt Creator Manual
- QtTaskTree
- QParallelTaskTreeRunner
- Extending Qt Creator Manual 20.0.0-rc1

# QtTaskTree::QParallelTaskTreeRunner Class

class QtTaskTree::QParallelTaskTreeRunner

A parallel task tree execution controller. More...

Header: | `#include <qtasktreerunner.h>`
CMake: | `find_package(Qt6 REQUIRED COMPONENTS TaskTree)` `target_link_libraries(mytarget PRIVATE Qt6::TaskTree)`
qmake: | `QT += tasktree`
Since: | 6.11

- List of all members, including inherited members

## Public Functions

| ~QParallelTaskTreeRunner()
QtTaskTree::Q_TASKTREE_EXPORT | cancel()
QtTaskTree::Q_TASKTREE_EXPORT | isRunning() const
QtTaskTree::Q_TASKTREE_EXPORT | reset()
void | start(const QtTaskTree::Group &recipe, SetupHandler &&setupHandler = {}, DoneHandler &&doneHandler = {}, QtTaskTree::CallDone callDone = QtTaskTree::CallDoneFlag::Always)

## Detailed Description

Manages parallel task tree execution. Use the start() method to execute a given recipe instantly, keeping other possibly running task trees in parallel.

See also Task Tree Runners.

## Member Function Documentation

### `[noexcept]` QParallelTaskTreeRunner::~QParallelTaskTreeRunner()

Destroys the parallel task tree runner. All running task trees are deleted. No task trees' done handlers are called.

See also ~QTaskTree().

### QtTaskTree::Q_TASKTREE_EXPORT QParallelTaskTreeRunner::cancel()

Cancels all running task trees. Calls task trees' done handlers with DoneWith::Cancel. The order of task trees' cancellation is random.

### QtTaskTree::Q_TASKTREE_EXPORT QParallelTaskTreeRunner::isRunning() const

Returns whether the parallel task tree runner is currently executing at least one task tree.

### QtTaskTree::Q_TASKTREE_EXPORT QParallelTaskTreeRunner::reset()

Resets all running task trees. No task trees' done handlers are called.

### template <typename SetupHandler = QtTaskTree::TreeSetupHandler, typename DoneHandler = QtTaskTree::TreeDoneHandler> void QParallelTaskTreeRunner::start(const QtTaskTree::Group &recipe, SetupHandler &&setupHandler = {}, DoneHandler &&doneHandler = {}, QtTaskTree::CallDone callDone = QtTaskTree::CallDoneFlag::Always)

Starts the recipe instantly and keeps other possibly running task trees in parallel. Calls setupHandler when new task tree is about to be started. Calls doneHandler when the task tree is finished. The doneHandler is called according to the passed callDone.