Geant4 11.1.1
Toolkit for the simulation of the passage of particles through matter
|
#include <TaskManager.hh>
Public Types | |
using | this_type = TaskManager |
using | size_type = ThreadPool::size_type |
Public Member Functions | |
TaskManager (ThreadPool *, bool _manage_pool=true) | |
virtual | ~TaskManager () noexcept(false) |
TaskManager (const TaskManager &)=delete | |
TaskManager (TaskManager &&)=default | |
TaskManager & | operator= (const TaskManager &)=delete |
TaskManager & | operator= (TaskManager &&)=default |
ThreadPool * | thread_pool () const |
size_type | size () const |
void | finalize () |
template<typename... Args> | |
void | exec (Task< Args... > *_task) |
template<typename RetT , typename FuncT , typename... Args> | |
std::shared_ptr< PackagedTask< RetT, Args... > > | async (FuncT &&func, Args &&... args) |
template<typename RetT , typename FuncT > | |
std::shared_ptr< PackagedTask< RetT > > | async (FuncT &&func) |
template<typename FuncT , typename... Args> | |
auto | async (FuncT &&func, Args... args) -> std::shared_ptr< PackagedTask< decay_t< decltype(func(args...))>, Args... > > |
template<typename RetT , typename ArgT , typename FuncT , typename... Args> | |
std::shared_ptr< Task< RetT, ArgT, Args... > > | wrap (TaskGroup< RetT, ArgT > &tg, FuncT &&func, Args &&... args) |
template<typename RetT , typename ArgT , typename FuncT > | |
std::shared_ptr< Task< RetT, ArgT > > | wrap (TaskGroup< RetT, ArgT > &tg, FuncT &&func) |
template<typename RetT , typename ArgT , typename FuncT , typename... Args> | |
void | exec (TaskGroup< RetT, ArgT > &tg, FuncT &&func, Args &&... args) |
template<typename RetT , typename ArgT , typename FuncT > | |
void | exec (TaskGroup< RetT, ArgT > &tg, FuncT &&func) |
template<typename RetT , typename ArgT , typename FuncT , typename... Args> | |
void | rexec (TaskGroup< RetT, ArgT > &tg, FuncT &&func, Args &&... args) |
template<typename RetT , typename ArgT , typename FuncT > | |
void | rexec (TaskGroup< RetT, ArgT > &tg, FuncT &&func) |
template<typename FuncT , typename... Args> | |
void | rexec (TaskGroup< void, void > &tg, FuncT &&func, Args &&... args) |
template<typename FuncT > | |
void | rexec (TaskGroup< void, void > &tg, FuncT &&func) |
Static Public Member Functions | |
static TaskManager * | GetInstance () |
get the singleton pointer | |
static TaskManager * | GetInstanceIfExists () |
static unsigned | ncores () |
Protected Attributes | |
ThreadPool * | m_pool = nullptr |
bool | m_is_finalized = false |
Definition at line 48 of file TaskManager.hh.
Definition at line 52 of file TaskManager.hh.
Definition at line 51 of file TaskManager.hh.
|
inlineexplicit |
Definition at line 258 of file TaskManager.hh.
|
inlinevirtual |
Definition at line 268 of file TaskManager.hh.
|
delete |
|
default |
|
inline |
Definition at line 121 of file TaskManager.hh.
|
inline |
Definition at line 107 of file TaskManager.hh.
Referenced by G4TaskRunManagerKernel::ExecuteWorkerInit(), G4TaskRunManagerKernel::ExecuteWorkerTask(), and G4TaskRunManagerKernel::InitializeWorker().
|
inline |
Definition at line 134 of file TaskManager.hh.
|
inline |
Definition at line 96 of file TaskManager.hh.
|
inline |
Definition at line 178 of file TaskManager.hh.
|
inline |
Definition at line 172 of file TaskManager.hh.
|
inline |
Definition at line 81 of file TaskManager.hh.
|
inlinestatic |
get the singleton pointer
Definition at line 236 of file TaskManager.hh.
|
inlinestatic |
Definition at line 251 of file TaskManager.hh.
|
inlinestatic |
Definition at line 68 of file TaskManager.hh.
|
delete |
|
default |
|
inline |
Definition at line 190 of file TaskManager.hh.
|
inline |
Definition at line 184 of file TaskManager.hh.
|
inline |
Definition at line 204 of file TaskManager.hh.
|
inline |
Definition at line 198 of file TaskManager.hh.
|
inline |
Definition at line 77 of file TaskManager.hh.
|
inline |
Definition at line 73 of file TaskManager.hh.
|
inline |
Definition at line 162 of file TaskManager.hh.
|
inline |
Definition at line 155 of file TaskManager.hh.
|
protected |
Definition at line 213 of file TaskManager.hh.
Referenced by finalize().
|
protected |
Definition at line 212 of file TaskManager.hh.
Referenced by async(), exec(), finalize(), size(), and thread_pool().