File tree Expand file tree Collapse file tree 1 file changed +4
-8
lines changed
sycl/unittests/thread_safety Expand file tree Collapse file tree 1 file changed +4
-8
lines changed Original file line number Diff line number Diff line change @@ -25,21 +25,17 @@ class ThreadPool {
25
25
private:
26
26
template <int N, typename Func, typename ... Funcs>
27
27
void enqueueHelper (Func &&func, Funcs &&... funcs) {
28
- enqueue (std::forward<Func>(func));
28
+ enqueue (std::forward<Func>(func), N - 1 );
29
29
enqueueHelper<N - 1 >(std::forward<Funcs>(funcs)...);
30
30
}
31
31
32
- template <int N, typename Func>
33
- void enqueueHelper (Func &&f) {
34
- enqueue (std::forward<Func>(f), N);
35
- }
36
-
37
32
template <int N>
38
33
void enqueueHelper () {}
39
34
40
35
template <typename Func, typename ... Args>
41
- void enqueue (Func func, Args... args) {
42
- MThreadPool.push_back (std::thread (func, args...));
36
+ void enqueue (Func &&func, Args &&... args) {
37
+ MThreadPool.emplace_back (std::forward<Func>(func),
38
+ std::forward<Args>(args)...);
43
39
}
44
40
45
41
void wait () {
You can’t perform that action at this time.
0 commit comments