#include <XrdEcThreadPool.hh>
|
| ~ThreadPool () |
| Destructor.
|
|
template<typename FUNC , typename ... ARGs> |
std::future< typename std::result_of< FUNC(ARGs...)>::type > | Execute (FUNC func, ARGs... args) |
| Schedule a functional (together with its arguments) for execution.
|
|
|
template<typename FUNC , typename TUPL , int ... INDICES> |
static auto | tuple_call_impl (FUNC &func, TUPL &args, sequence< INDICES... >) -> decltype(func(std::move(std::get< INDICES >(args))...)) |
|
template<typename FUNC , typename ... ARGs> |
static auto | tuple_call (FUNC &func, std::tuple< ARGs... > &tup) -> decltype(tuple_call_impl(func, tup, typename seq_gen< sizeof...(ARGs)>::type{})) |
|
◆ ~ThreadPool()
XrdEc::ThreadPool::~ThreadPool |
( |
| ) |
|
|
inline |
◆ ThreadPool()
XrdEc::ThreadPool::ThreadPool |
( |
| ) |
|
|
inlineprivate |
◆ Execute()
template<typename FUNC , typename ... ARGs>
std::future< typename std::result_of< FUNC(ARGs...)>::type > XrdEc::ThreadPool::Execute |
( |
FUNC |
func, |
|
|
ARGs... |
args |
|
) |
| |
|
inline |
◆ Instance()
static ThreadPool & XrdEc::ThreadPool::Instance |
( |
| ) |
|
|
inlinestatic |
◆ tuple_call()
template<typename FUNC , typename ... ARGs>
static auto XrdEc::ThreadPool::tuple_call |
( |
FUNC & |
func, |
|
|
std::tuple< ARGs... > & |
tup |
|
) |
| -> decltype( tuple_call_impl( func, tup, typename seq_gen<sizeof...(ARGs)>::type{} ) )
|
|
inlinestaticprivate |
◆ tuple_call_impl()
template<typename FUNC , typename TUPL , int ... INDICES>
static auto XrdEc::ThreadPool::tuple_call_impl |
( |
FUNC & |
func, |
|
|
TUPL & |
args, |
|
|
sequence< INDICES... > |
|
|
) |
| -> decltype( func( std::move( std::get<INDICES>( args ) )... ) )
|
|
inlinestaticprivate |
◆ threadpool
The documentation for this class was generated from the following file: