Skip to content

Commit 5cf209b

Browse files
committed
reverts thread_synconizer to C++14
1 parent c41439e commit 5cf209b

1 file changed

Lines changed: 2 additions & 2 deletions

File tree

src/common/util/thread_syncronizer.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -63,7 +63,7 @@ class thread_syncronizer {
6363
* @param args the arguments to pass to the functor
6464
* @return the result of the function
6565
*/
66-
template <class F, class... Args> typename std::invoke_result_t<F, Args...> enqueue_and_wait(F&& f, Args&&... args) {
66+
template <class F, class... Args> typename std::result_of<F(Args...)>::type enqueue_and_wait(F&& f, Args&&... args) {
6767
auto res = enqueue(f, args...);
6868
res.wait();
6969
return res.get();
@@ -75,7 +75,7 @@ class thread_syncronizer {
7575
* @param args the arguments to pass to the functor
7676
* @return the future holding the result of the execution
7777
*/
78-
template <class F, class... Args> auto enqueue(F&& f, Args&&... args) -> std::future<typename std::invoke_result_t<F, Args...>> {
78+
template <class F, class... Args> auto enqueue(F&& f, Args&&... args) -> std::future<typename std::result_of<F(Args...)>::type> {
7979
using return_type = typename std::result_of<F(Args...)>::type;
8080
auto task = std::make_shared<std::packaged_task<return_type()>>(std::bind(std::forward<F>(f), std::forward<Args>(args)...));
8181

0 commit comments

Comments
 (0)