forked from qt-creator/qt-creator
TaskTree: Introduce withTimeout()
Make it available for Group or CustomTask items. Note, that when withTimeout() is used, the total number of tasks grows by one. Change-Id: Idc71737ba66b92bdc4bf17599c793b1127d22f5e Reviewed-by: Marcus Tillmanns <marcus.tillmanns@qt.io> Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
This commit is contained in:
@@ -567,6 +567,23 @@ void TaskItem::setTaskErrorHandler(const TaskEndHandler &handler)
|
||||
m_taskHandler.m_errorHandler = handler;
|
||||
}
|
||||
|
||||
TaskItem TaskItem::withTimeout(const TaskItem &item, milliseconds timeout,
|
||||
const GroupEndHandler &handler)
|
||||
{
|
||||
const TimeoutTask::EndHandler taskHandler = handler
|
||||
? [handler](const milliseconds &) { handler(); } : TimeoutTask::EndHandler();
|
||||
return Group {
|
||||
parallel,
|
||||
stopOnFinished,
|
||||
Group {
|
||||
finishAllAndError,
|
||||
TimeoutTask([timeout](milliseconds &timeoutData) { timeoutData = timeout; },
|
||||
taskHandler)
|
||||
},
|
||||
item
|
||||
};
|
||||
}
|
||||
|
||||
class TaskTreePrivate;
|
||||
class TaskNode;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user