48#ifndef GUM_THREAD_EXECUTOR_OMP_H
49#define GUM_THREAD_EXECUTOR_OMP_H
93 template <
typename FUNCTION,
typename... ARGS >
94 static void execute(std::size_t nb_threads, FUNCTION exec_func, ARGS&&... func_args);
97 template <
typename FUNC1,
typename FUNC2,
typename... ARGS >
101 ARGS&&... func_args);
Set the max number of threads to be used.
static int nbRunningThreadsExecutors()
indicates how many threadExecutors are currently running
static void execute(std::size_t nb_threads, FUNCTION exec_func, ARGS &&... func_args)
executes a function using several threads
static void executeOrUndo(std::size_t nb_threads, FUNC1 exec_func, FUNC2 undo_func, ARGS &&... func_args)
executes in parallel a function and undoes it if exceptions are raised
gum is the global namespace for all aGrUM entities
The base class used by all thread executors.
A class to execute several threads by exploiting openMP.