From eb5d8efc5156f8f7687e64defcbb2ed0f6911fc0 Mon Sep 17 00:00:00 2001 From: Jarek Kobus Date: Thu, 28 May 2020 14:06:56 +0200 Subject: [PATCH] Pass the thread pool into ReduceKernel This was overlooked when enabling setting a custom thread pool for various concurrent methods. Fixes: QTBUG-53465 Change-Id: I189a7776fa02bbc3e995538cc154a7246ad1ad7a Reviewed-by: Sona Kurazyan --- src/concurrent/qtconcurrentfilterkernel.h | 6 +++--- src/concurrent/qtconcurrentmapkernel.h | 4 ++-- src/concurrent/qtconcurrentreducekernel.h | 4 ++-- 3 files changed, 7 insertions(+), 7 deletions(-) diff --git a/src/concurrent/qtconcurrentfilterkernel.h b/src/concurrent/qtconcurrentfilterkernel.h index 90d5b9aa77..5f9094f6b6 100644 --- a/src/concurrent/qtconcurrentfilterkernel.h +++ b/src/concurrent/qtconcurrentfilterkernel.h @@ -93,7 +93,7 @@ public: sequence(_sequence), keep(_keep), reduce(_reduce), - reducer(OrderedReduce) + reducer(pool, OrderedReduce) { } bool runIteration(typename Sequence::const_iterator it, int index, T *) override @@ -173,7 +173,7 @@ public: ReduceFunctor _reduce, ReduceOptions reduceOption) : IterateKernelType(pool, begin, end), reducedResult(), keep(_keep), reduce(_reduce), - reducer(reduceOption) + reducer(pool, reduceOption) { } FilteredReducedKernel(QThreadPool *pool, Iterator begin, Iterator end, KeepFunctor _keep, @@ -183,7 +183,7 @@ public: reducedResult(std::forward(initialValue)), keep(_keep), reduce(_reduce), - reducer(reduceOption) + reducer(pool, reduceOption) { } diff --git a/src/concurrent/qtconcurrentmapkernel.h b/src/concurrent/qtconcurrentmapkernel.h index e882dbfa75..11be262628 100644 --- a/src/concurrent/qtconcurrentmapkernel.h +++ b/src/concurrent/qtconcurrentmapkernel.h @@ -103,7 +103,7 @@ public: MappedReducedKernel(QThreadPool *pool, Iterator begin, Iterator end, MapFunctor _map, ReduceFunctor _reduce, ReduceOptions reduceOptions) : IterateKernel(pool, begin, end), reducedResult(), - map(_map), reduce(_reduce), reducer(reduceOptions) + map(_map), reduce(_reduce), reducer(pool, reduceOptions) { } MappedReducedKernel(QThreadPool *pool, Iterator begin, Iterator end, MapFunctor _map, @@ -113,7 +113,7 @@ public: reducedResult(std::forward(initialValue)), map(_map), reduce(_reduce), - reducer(reduceOptions) + reducer(pool, reduceOptions) { } diff --git a/src/concurrent/qtconcurrentreducekernel.h b/src/concurrent/qtconcurrentreducekernel.h index 4c023ebb4a..9a9027c9d0 100644 --- a/src/concurrent/qtconcurrentreducekernel.h +++ b/src/concurrent/qtconcurrentreducekernel.h @@ -140,9 +140,9 @@ class ReduceKernel } public: - ReduceKernel(ReduceOptions _reduceOptions) + ReduceKernel(QThreadPool *pool, ReduceOptions _reduceOptions) : reduceOptions(_reduceOptions), progress(0), resultsMapSize(0), - threadCount(QThreadPool::globalInstance()->maxThreadCount()) + threadCount(pool->maxThreadCount()) { } void runReduce(ReduceFunctor &reduce,