TaskTree: Get rid of Storage subclass of GroupItem

Make the c'tor of the GroupItem taking the TreeStorageBase
public instead.

This addresses the 20th point in the master task below.

Task-number: QTCREATORBUG-28741
Change-Id: I78320ec24b4e4b915ab549135fb93b45c658b9f2
Reviewed-by: hjk <hjk@qt.io>
This commit is contained in:
Jarek Kobus
2023-11-19 14:18:41 +01:00
parent 69aa92159c
commit ced3052e7f
23 changed files with 121 additions and 126 deletions

View File

@@ -153,6 +153,10 @@ public:
// Called when group done, before group's storages are deleted
using GroupDoneHandler = std::function<DoneResult(DoneWith)>;
GroupItem(const TreeStorageBase &storage)
: m_type(Type::Storage)
, m_storageList{storage} {}
protected:
// Internal, provided by CustomTask
using InterfaceCreateHandler = std::function<TaskInterface *(void)>;
@@ -193,9 +197,6 @@ protected:
GroupItem(const GroupData &data)
: m_type(Type::GroupData)
, m_groupData(data) {}
GroupItem(const TreeStorageBase &storage)
: m_type(Type::Storage)
, m_storageList{storage} {}
GroupItem(const TaskHandler &handler)
: m_type(Type::TaskHandler)
, m_taskHandler(handler) {}
@@ -328,12 +329,6 @@ TASKING_EXPORT extern const GroupItem stopOnSuccessOrError;
TASKING_EXPORT extern const GroupItem finishAllAndSuccess;
TASKING_EXPORT extern const GroupItem finishAllAndError;
class TASKING_EXPORT Storage final : public GroupItem
{
public:
Storage(const TreeStorageBase &storage) : GroupItem(storage) { }
};
// Synchronous invocation. Similarly to Group - isn't counted as a task inside taskCount()
class TASKING_EXPORT Sync final : public GroupItem
{

View File

@@ -344,9 +344,9 @@ static Group interDeviceTransferTask(const FilePath &source, const FilePath &des
};
const Group root {
Storage(writerReadyBarrier),
writerReadyBarrier,
parallel,
Storage(storage),
storage,
FileStreamWriterTask(onWriterSetup),
Group {
waitForBarrierTask(writerReadyBarrier),

View File

@@ -182,7 +182,7 @@ void AndroidSdkDownloader::downloadAndExtractSdk()
};
const Group root {
Tasking::Storage(storage),
storage,
NetworkQueryTask(onQuerySetup, onQueryDone),
UnarchiverTask(onUnarchiveSetup, onUnarchiverDone)
};

View File

@@ -446,7 +446,7 @@ void TestRunner::runTestsHelper()
};
const Group group {
finishAllAndSuccess,
Tasking::Storage(storage),
storage,
onGroupSetup(onSetup),
ProcessTask(onProcessSetup, onProcessDone)
};

View File

@@ -192,7 +192,7 @@ static LocatorMatcherTask currentDocumentMatcher()
};
const Group root {
Tasking::Storage(resultStorage),
resultStorage,
CurrentDocumentSymbolsRequestTask(onQuerySetup, onQueryDone, CallDoneIf::Success),
AsyncTask<void>(onFilterSetup)
};

View File

@@ -824,7 +824,7 @@ Group ClangTool::runRecipe(const RunSettings &runSettings,
};
topTasks.append(Group {
Storage(storage),
storage,
TaskTreeTask(onTreeSetup, onTreeDone, CallDoneIf::Success)
});
return {topTasks};

View File

@@ -223,7 +223,7 @@ GroupItem clangToolTask(const AnalyzeInputData &input,
const Group group {
finishAllAndSuccess,
Tasking::Storage(storage),
storage,
onGroupSetup(onSetup),
Group {
sequential,

View File

@@ -462,7 +462,7 @@ void LocatorMatcher::start()
const auto storage = task.storage;
const Group group {
finishAllAndSuccess,
Storage(storage),
storage,
onGroupSetup(onSetup(storage, index)),
onGroupDone([storage] { storage->finalize(); }),
task.task
@@ -473,7 +473,7 @@ void LocatorMatcher::start()
const Group root {
parallel,
Storage(collectorStorage),
collectorStorage,
ResultsCollectorTask(onCollectorSetup, onCollectorDone),
Group {
parallelTasks

View File

@@ -86,7 +86,7 @@ void CppProjectUpdater::update(const ProjectUpdateInfo &projectUpdateInfo,
};
const Group root {
Tasking::Storage(storage),
storage,
Group(tasks),
onGroupDone(onDone)
};

View File

@@ -145,7 +145,7 @@ DiffFilesController::DiffFilesController(IDocument *document)
};
const Group root = {
Storage(storage),
storage,
TaskTreeTask(onTreeSetup, onTreeDone)
};
setReloadRecipe(root);

View File

@@ -561,7 +561,7 @@ TaskTree *BranchView::onFastForwardMerge(const std::function<void()> &callback)
});
const Group root {
Tasking::Storage(storage),
storage,
parallel,
ProcessTask(onMergeBaseSetup, onMergeBaseDone, CallDoneIf::Success),
topRevisionProc,

View File

@@ -248,7 +248,7 @@ GitDiffEditorController::GitDiffEditorController(IDocument *document,
};
const Group root {
Tasking::Storage(diffInputStorage),
diffInputStorage,
ProcessTask(onDiffSetup, onDiffDone, CallDoneIf::Success),
postProcessTask(diffInputStorage)
};
@@ -333,8 +333,8 @@ FileListDiffController::FileListDiffController(IDocument *document, const QStrin
};
const Group root {
Tasking::Storage(storage),
Tasking::Storage(diffInputStorage),
storage,
diffInputStorage,
Group {
parallel,
continueOnSuccess,
@@ -527,8 +527,8 @@ ShowController::ShowController(IDocument *document, const QString &id)
};
const Group root {
Tasking::Storage(storage),
Tasking::Storage(diffInputStorage),
storage,
diffInputStorage,
parallel,
onGroupSetup([this] { setStartupFile(VcsBase::source(this->document()).toString()); }),
Group {

View File

@@ -76,7 +76,7 @@ LocatorMatcherTask locatorMatcher(Client *client, int maxResultCount,
};
const Group root {
Tasking::Storage(resultStorage),
resultStorage,
ClientWorkspaceSymbolRequestTask(onQuerySetup, onQueryDone, CallDoneIf::Success),
AsyncTask<void>(onFilterSetup)
};
@@ -135,7 +135,7 @@ LocatorMatcherTask currentDocumentMatcher()
};
const Group root {
Tasking::Storage(resultStorage),
resultStorage,
CurrentDocumentSymbolsRequestTask(onQuerySetup, onQueryDone, CallDoneIf::Success),
AsyncTask<void>(onFilterSetup)
};

View File

@@ -64,7 +64,7 @@ MercurialDiffEditorController::MercurialDiffEditorController(IDocument *document
};
const Group root {
Tasking::Storage(diffInputStorage),
diffInputStorage,
ProcessTask(onDiffSetup, onDiffDone, CallDoneIf::Success),
postProcessTask(diffInputStorage)
};

View File

@@ -197,7 +197,7 @@ GroupItem GenericDeployStep::deployRecipe()
};
return Group {
Storage(storage),
storage,
onGroupSetup(onSetup),
mkdirTask(storage),
transferTask(storage)

View File

@@ -291,7 +291,7 @@ GroupItem GenericDirectUploadStep::deployRecipe()
};
const Group root {
Storage(storage),
storage,
onGroupSetup(setupHandler),
statTree(storage, preFilesToStat, preStatEndHandler),
uploadTask(storage),

View File

@@ -229,7 +229,7 @@ GroupItem GenericLinuxDeviceTesterPrivate::transferTasks() const
TreeStorage<TransferStorage> storage;
return Group {
continueOnSuccess,
Tasking::Storage(storage),
storage,
transferTask(FileTransferMethod::GenericCopy, storage),
transferTask(FileTransferMethod::Sftp, storage),
transferTask(FileTransferMethod::Rsync, storage),

View File

@@ -198,7 +198,7 @@ SubversionDiffEditorController::SubversionDiffEditorController(IDocument *docume
};
const Group root {
Tasking::Storage(diffInputStorage),
diffInputStorage,
parallel,
Group {
finishAllAndSuccess,

View File

@@ -196,8 +196,8 @@ Group ValgrindProcessPrivate::runRecipe() const
const Group root {
parallel,
Storage(storage),
Storage(xmlBarrier),
storage,
xmlBarrier,
onGroupSetup(onSetup),
ProcessTask(onProcessSetup),
Group {

View File

@@ -146,7 +146,7 @@ TestData createTestData(const QList<ResultType> &expectedResults, Function &&fun
};
const Group root {
Storage(storage),
storage,
ConcurrentCallTask<ResultType>(onSetup, onDone)
};
@@ -208,8 +208,8 @@ void tst_ConcurrentCall::taskTree_data()
};
const Group root {
Storage(storage),
Storage(internalStorage),
storage,
internalStorage,
onGroupSetup([internalStorage] { *internalStorage = 1; }),
ConcurrentCallTask<int>(onSetup, onDone, CallDoneIf::Success),
ConcurrentCallTask<int>(onSetup, onDone, CallDoneIf::Success),

View File

@@ -261,8 +261,8 @@ void tst_Tasking::runtimeCheck()
const TreeStorage<int> storage;
Group {
Storage(storage),
Storage(storage),
storage,
storage,
};
}
@@ -274,8 +274,8 @@ void tst_Tasking::runtimeCheck()
const auto storage2 = storage1;
Group {
Storage(storage1),
Storage(storage2),
storage1,
storage2,
};
}
@@ -431,20 +431,20 @@ static TestData storageShadowingData()
};
const Group root {
Storage(storage),
Storage(helperStorage),
Storage(shadowedStorage),
storage,
helperStorage,
shadowedStorage,
groupSetupWithStorage(1),
Group {
Storage(shadowedStorage),
shadowedStorage,
groupSetupWithStorage(2),
Group {
Storage(shadowedStorage),
shadowedStorage,
groupSetupWithStorage(3),
groupDoneWithStorage(3)
},
Group {
Storage(shadowedStorage),
shadowedStorage,
groupSetupWithStorage(4),
groupDoneWithStorage(4)
},
@@ -508,7 +508,7 @@ static TestData parallelData()
};
const Group root {
Storage(storage),
storage,
parallel,
createSuccessTask(1),
createSuccessTask(2),
@@ -627,21 +627,21 @@ void tst_Tasking::testTree_data()
{
const Group root1 {
Storage(storage),
storage,
groupDone(0)
};
const Group root2 {
Storage(storage),
storage,
onGroupSetup([] { return SetupResult::Continue; }),
groupDone(0)
};
const Group root3 {
Storage(storage),
storage,
onGroupSetup([] { return SetupResult::StopWithSuccess; }),
groupDone(0)
};
const Group root4 {
Storage(storage),
storage,
onGroupSetup([] { return SetupResult::StopWithError; }),
groupDone(0)
};
@@ -658,7 +658,7 @@ void tst_Tasking::testTree_data()
{
const auto setupGroup = [=](SetupResult setupResult, WorkflowPolicy policy) {
return Group {
Storage(storage),
storage,
workflowPolicy(policy),
onGroupSetup([setupResult] { return setupResult; }),
groupDone(0)
@@ -693,7 +693,7 @@ void tst_Tasking::testTree_data()
{
const Group root {
Storage(storage),
storage,
createTaskWithSetupTweak(1, SetupResult::StopWithSuccess),
createTaskWithSetupTweak(2, SetupResult::StopWithSuccess)
};
@@ -708,7 +708,7 @@ void tst_Tasking::testTree_data()
{
const Group root {
Storage(storage),
storage,
createTaskWithSetupTweak(1, SetupResult::StopWithError),
createTaskWithSetupTweak(2, SetupResult::StopWithError)
};
@@ -721,7 +721,7 @@ void tst_Tasking::testTree_data()
{
const Group root {
Storage(storage),
storage,
createTaskWithSetupTweak(1, SetupResult::Continue),
createTaskWithSetupTweak(2, SetupResult::Continue),
createTaskWithSetupTweak(3, SetupResult::StopWithError),
@@ -743,7 +743,7 @@ void tst_Tasking::testTree_data()
{
const Group root {
parallel,
Storage(storage),
storage,
createTaskWithSetupTweak(1, SetupResult::Continue),
createTaskWithSetupTweak(2, SetupResult::Continue),
createTaskWithSetupTweak(3, SetupResult::StopWithError),
@@ -765,7 +765,7 @@ void tst_Tasking::testTree_data()
{
const Group root {
parallel,
Storage(storage),
storage,
createTaskWithSetupTweak(1, SetupResult::Continue),
createTaskWithSetupTweak(2, SetupResult::Continue),
Group {
@@ -789,7 +789,7 @@ void tst_Tasking::testTree_data()
{
const Group root {
parallel,
Storage(storage),
storage,
createTaskWithSetupTweak(1, SetupResult::Continue),
createTaskWithSetupTweak(2, SetupResult::Continue),
Group {
@@ -814,7 +814,7 @@ void tst_Tasking::testTree_data()
{
const Group root {
Storage(storage),
storage,
Group {
Group {
Group {
@@ -861,7 +861,7 @@ void tst_Tasking::testTree_data()
{
auto setupSubTree = [storage, createSuccessTask](TaskTree &taskTree) {
const Group nestedRoot {
Storage(storage),
storage,
createSuccessTask(2),
createSuccessTask(3),
createSuccessTask(4)
@@ -874,7 +874,7 @@ void tst_Tasking::testTree_data()
taskTree.onStorageDone(storage, collectSubLog);
};
const Group root1 {
Storage(storage),
storage,
createSuccessTask(1),
createSuccessTask(2),
createSuccessTask(3),
@@ -883,7 +883,7 @@ void tst_Tasking::testTree_data()
groupDone(0)
};
const Group root2 {
Storage(storage),
storage,
Group { createSuccessTask(1) },
Group { createSuccessTask(2) },
Group { createSuccessTask(3) },
@@ -892,7 +892,7 @@ void tst_Tasking::testTree_data()
groupDone(0)
};
const Group root3 {
Storage(storage),
storage,
createSuccessTask(1),
TaskTreeTask(setupSubTree),
createSuccessTask(5),
@@ -919,7 +919,7 @@ void tst_Tasking::testTree_data()
{
const Group root {
Storage(storage),
storage,
Group {
createSuccessTask(1),
Group {
@@ -965,7 +965,7 @@ void tst_Tasking::testTree_data()
{
const Group root {
Storage(storage),
storage,
createSuccessTask(1),
createSuccessTask(2),
createFailingTask(3),
@@ -988,7 +988,7 @@ void tst_Tasking::testTree_data()
{
const auto createRoot = [storage, groupDone](WorkflowPolicy policy) {
return Group {
Storage(storage),
storage,
workflowPolicy(policy),
groupDone(0)
};
@@ -1030,7 +1030,7 @@ void tst_Tasking::testTree_data()
const auto createRoot = [storage, createSuccessTask, groupDone](
WorkflowPolicy policy) {
return Group {
Storage(storage),
storage,
workflowPolicy(policy),
createSuccessTask(1),
groupDone(0)
@@ -1082,7 +1082,7 @@ void tst_Tasking::testTree_data()
const auto createRoot = [storage, createFailingTask, groupDone](
WorkflowPolicy policy) {
return Group {
Storage(storage),
storage,
workflowPolicy(policy),
createFailingTask(1),
groupDone(0)
@@ -1137,7 +1137,7 @@ void tst_Tasking::testTree_data()
const auto createRoot = [storage, createSuccessTask, createFailingTask, groupDone](
WorkflowPolicy policy) {
return Group {
Storage(storage),
storage,
parallel,
workflowPolicy(policy),
createFailingTask(1, 1ms),
@@ -1207,7 +1207,7 @@ void tst_Tasking::testTree_data()
const auto createRoot = [storage, createSuccessTask, createFailingTask, groupDone](
WorkflowPolicy policy) {
return Group {
Storage(storage),
storage,
parallel,
workflowPolicy(policy),
createSuccessTask(1),
@@ -1293,7 +1293,7 @@ void tst_Tasking::testTree_data()
const auto createRoot = [storage, createSuccessTask, createFailingTask, groupDone](
WorkflowPolicy policy) {
return Group {
Storage(storage),
storage,
parallel,
Group {
workflowPolicy(policy),
@@ -1352,7 +1352,7 @@ void tst_Tasking::testTree_data()
const auto createRoot = [storage, createSuccessTask, createFailingTask, groupDone](
WorkflowPolicy policy) {
return Group {
Storage(storage),
storage,
parallel,
Group {
workflowPolicy(policy),
@@ -1423,7 +1423,7 @@ void tst_Tasking::testTree_data()
const auto createRoot = [storage, createSuccessTask, createFailingTask, groupDone](
WorkflowPolicy policy) {
return Group {
Storage(storage),
storage,
parallel,
Group {
workflowPolicy(policy),
@@ -1490,7 +1490,7 @@ void tst_Tasking::testTree_data()
const auto createRoot = [storage, createSuccessTask, createFailingTask, groupDone](
WorkflowPolicy policy) {
return Group {
Storage(storage),
storage,
workflowPolicy(policy),
createSuccessTask(1),
createFailingTask(2),
@@ -1562,7 +1562,7 @@ void tst_Tasking::testTree_data()
return Group {
parallel,
stopOnSuccessOrError,
Storage(storage),
storage,
createTask(1, firstResult, 1000ms),
createTask(2, secondResult, 1ms),
groupDone(0)
@@ -1604,7 +1604,7 @@ void tst_Tasking::testTree_data()
const auto createRoot = [storage, createSuccessTask, groupDone, groupSetupWithTweak](
SetupResult desiredResult) {
return Group {
Storage(storage),
storage,
Group {
groupSetupWithTweak(1, desiredResult),
createSuccessTask(1)
@@ -1648,7 +1648,7 @@ void tst_Tasking::testTree_data()
const auto createRoot = [storage, createTask, groupDone, groupDoneWithTweak](
DoneResult firstResult, DoneResult secondResult) {
return Group {
Storage(storage),
storage,
Group {
createTask(1, firstResult),
groupDoneWithTweak(1, secondResult)
@@ -1707,7 +1707,7 @@ void tst_Tasking::testTree_data()
const auto createRoot = [storage, createSuccessTask, groupDone, createTaskWithSetupTweak](
SetupResult desiredResult) {
return Group {
Storage(storage),
storage,
Group {
createTaskWithSetupTweak(1, desiredResult),
createSuccessTask(2)
@@ -1752,7 +1752,7 @@ void tst_Tasking::testTree_data()
{
const Group root {
parallelLimit(2),
Storage(storage),
storage,
Group {
groupSetup(1),
createSuccessTask(1)
@@ -1790,7 +1790,7 @@ void tst_Tasking::testTree_data()
{
const Group root {
parallelLimit(2),
Storage(storage),
storage,
Group {
groupSetup(1),
createSuccessTask(1)
@@ -1835,7 +1835,7 @@ void tst_Tasking::testTree_data()
{
const Group root1 {
parallelLimit(2),
Storage(storage),
storage,
Group {
groupSetup(1),
createSuccessTask(1)
@@ -1875,7 +1875,7 @@ void tst_Tasking::testTree_data()
// - tasks 4 and 5 should be skipped
const Group root2 {
parallelLimit(2),
Storage(storage),
storage,
Group {
groupSetup(1),
createSuccessTask(1, 10ms)
@@ -1919,7 +1919,7 @@ void tst_Tasking::testTree_data()
// - task 5 should be started (because of root's continueOnError policy)
const Group root3 {
continueOnError,
Storage(storage),
storage,
Group {
parallelLimit(2),
Group {
@@ -1969,7 +1969,7 @@ void tst_Tasking::testTree_data()
{
const Group root {
parallelLimit(2),
Storage(storage),
storage,
Group {
groupSetup(1),
Group {
@@ -2019,7 +2019,7 @@ void tst_Tasking::testTree_data()
{
const Group root {
parallelLimit(2),
Storage(storage),
storage,
Group {
groupSetup(1),
Group { createSuccessTask(1) }
@@ -2065,7 +2065,7 @@ void tst_Tasking::testTree_data()
{
const Group root {
parallelLimit(2),
Storage(storage),
storage,
Group {
groupSetup(1),
Group { createSuccessTask(1) }
@@ -2104,7 +2104,7 @@ void tst_Tasking::testTree_data()
{
const Group root {
Storage(storage),
storage,
createSync(1),
createSync(2),
createSync(3),
@@ -2123,7 +2123,7 @@ void tst_Tasking::testTree_data()
{
const Group root {
Storage(storage),
storage,
createSyncWithTweak(1, DoneResult::Success),
createSyncWithTweak(2, DoneResult::Success),
createSyncWithTweak(3, DoneResult::Success),
@@ -2147,7 +2147,7 @@ void tst_Tasking::testTree_data()
{
const Group root {
Storage(storage),
storage,
parallel,
createSync(1),
createSync(2),
@@ -2167,7 +2167,7 @@ void tst_Tasking::testTree_data()
{
const Group root {
Storage(storage),
storage,
parallel,
createSync(1),
createSync(2),
@@ -2186,7 +2186,7 @@ void tst_Tasking::testTree_data()
{
const Group root {
Storage(storage),
storage,
createSync(1),
createSuccessTask(2),
createSync(3),
@@ -2209,7 +2209,7 @@ void tst_Tasking::testTree_data()
{
const Group root {
Storage(storage),
storage,
createSync(1),
createSuccessTask(2),
createSyncWithTweak(3, DoneResult::Error),
@@ -2235,8 +2235,8 @@ void tst_Tasking::testTree_data()
// setupBarrierAdvance, placed BEFORE the group containing the waitFor() element
// in the tree order, works OK in SEQUENTIAL mode.
const Group root1 {
Storage(storage),
Storage(barrier),
storage,
barrier,
sequential,
createBarrierAdvance(storage, barrier, 1),
Group {
@@ -2260,8 +2260,8 @@ void tst_Tasking::testTree_data()
// setupTaskWithCondition, placed BEFORE the group containing the waitFor() element
// in the tree order, works OK in PARALLEL mode.
const Group root2 {
Storage(storage),
Storage(barrier),
storage,
barrier,
parallel,
createBarrierAdvance(storage, barrier, 1),
Group {
@@ -2292,8 +2292,8 @@ void tst_Tasking::testTree_data()
// come from the not yet started next task, causing a deadlock.
// The minimal requirement for this scenario to succeed is to set parallelLimit(2) or more.
const Group root3 {
Storage(storage),
Storage(barrier),
storage,
barrier,
parallel,
Group {
groupSetup(2),
@@ -2317,8 +2317,8 @@ void tst_Tasking::testTree_data()
// setupBarrierAdvance, placed BEFORE the groups containing the waitFor() element
// in the tree order, wakes both waitFor tasks.
const Group root4 {
Storage(storage),
Storage(barrier),
storage,
barrier,
parallel,
createBarrierAdvance(storage, barrier, 1),
Group {
@@ -2348,9 +2348,9 @@ void tst_Tasking::testTree_data()
SingleBarrier barrier2;
const Group root5 {
Storage(storage),
Storage(barrier),
Storage(barrier2),
storage,
barrier,
barrier2,
parallel,
createBarrierAdvance(storage, barrier, 1),
createBarrierAdvance(storage, barrier2, 2),
@@ -2394,8 +2394,8 @@ void tst_Tasking::testTree_data()
// setupBarrierAdvance, placed BEFORE the group containing the waitFor() element
// in the tree order, works OK in SEQUENTIAL mode.
const Group root1 {
Storage(storage),
Storage(barrier),
storage,
barrier,
sequential,
createBarrierAdvance(storage, barrier, 1),
createBarrierAdvance(storage, barrier, 2),
@@ -2422,8 +2422,8 @@ void tst_Tasking::testTree_data()
// setupBarrierAdvance, placed BEFORE the group containing the waitFor() element
// in the tree order, works OK in PARALLEL mode.
const Group root2 {
Storage(storage),
Storage(barrier),
storage,
barrier,
parallel,
createBarrierAdvance(storage, barrier, 1),
createBarrierAdvance(storage, barrier, 2),
@@ -2457,8 +2457,8 @@ void tst_Tasking::testTree_data()
// come from the not yet started next task, causing a deadlock.
// The minimal requirement for this scenario to succeed is to set parallelLimit(2) or more.
const Group root3 {
Storage(storage),
Storage(barrier),
storage,
barrier,
parallel,
Group {
groupSetup(2),
@@ -2485,8 +2485,8 @@ void tst_Tasking::testTree_data()
// setupBarrierAdvance, placed BEFORE the groups containing the waitFor() element
// in the tree order, wakes both waitFor tasks.
const Group root4 {
Storage(storage),
Storage(barrier),
storage,
barrier,
parallel,
createBarrierAdvance(storage, barrier, 1),
createBarrierAdvance(storage, barrier, 2),
@@ -2530,7 +2530,7 @@ void tst_Tasking::testTree_data()
// 1. When the timeout has triggered or not.
// 2. With and without timeout handler.
const Group root1 {
Storage(storage),
storage,
TestTask(setupTask(1, 1000ms), setupDone(1))
.withTimeout(1ms)
};
@@ -2542,7 +2542,7 @@ void tst_Tasking::testTree_data()
DoneWith::Error};
const Group root2 {
Storage(storage),
storage,
TestTask(setupTask(1, 1000ms), setupDone(1))
.withTimeout(1ms, setupTimeout(1))
};
@@ -2555,7 +2555,7 @@ void tst_Tasking::testTree_data()
DoneWith::Error};
const Group root3 {
Storage(storage),
storage,
TestTask(setupTask(1, 1ms), setupDone(1))
.withTimeout(1000ms)
};
@@ -2567,7 +2567,7 @@ void tst_Tasking::testTree_data()
DoneWith::Success};
const Group root4 {
Storage(storage),
storage,
TestTask(setupTask(1, 1ms), setupDone(1))
.withTimeout(1000ms, setupTimeout(1))
};
@@ -2580,7 +2580,7 @@ void tst_Tasking::testTree_data()
// 1. When the timeout has triggered or not.
// 2. With and without timeout handler.
const Group root1 {
Storage(storage),
storage,
Group {
createSuccessTask(1, 1000ms)
}.withTimeout(1ms)
@@ -2594,7 +2594,7 @@ void tst_Tasking::testTree_data()
// Test Group::withTimeout(), passing custom handler
const Group root2 {
Storage(storage),
storage,
Group {
createSuccessTask(1, 1000ms)
}.withTimeout(1ms, setupTimeout(1))
@@ -2608,7 +2608,7 @@ void tst_Tasking::testTree_data()
DoneWith::Error};
const Group root3 {
Storage(storage),
storage,
Group {
createSuccessTask(1, 1ms)
}.withTimeout(1000ms)
@@ -2622,7 +2622,7 @@ void tst_Tasking::testTree_data()
// Test Group::withTimeout(), passing custom handler
const Group root4 {
Storage(storage),
storage,
Group {
createSuccessTask(1, 1ms)
}.withTimeout(1000ms, setupTimeout(1))
@@ -2749,7 +2749,7 @@ struct StorageIO
static Group inputOutputRecipe(const TreeStorage<StorageIO> &storage)
{
return Group {
Storage(storage),
storage,
onGroupSetup([storage] { ++storage->value; }),
onGroupDone([storage] { storage->value *= 2; })
};
@@ -2819,7 +2819,7 @@ void tst_Tasking::storageDestructor()
taskObject = 1000ms;
};
const Group root {
Storage(storage),
storage,
TestTask(setupSleepingTask)
};

View File

@@ -76,8 +76,8 @@ Group recipe(const Tasking::TreeStorage<ExternalData> &externalStorage)
}
const QList<GroupItem> recipe {
Storage(externalStorage),
Storage(internalStorage),
externalStorage,
internalStorage,
NetworkQueryTask(onDownloadSetup, onDownloadDone),
ConcurrentCallTask<QImage>(onReadSetup, onReadDone),
Group { parallelTasks }

View File

@@ -97,7 +97,7 @@ void Images::process()
};
const Group group {
Storage(storage),
storage,
NetworkQueryTask(onDownloadSetup, onDownloadDone),
ConcurrentCallTask<QImage>(onScalingSetup, onScalingDone)
};