libjmmcg
build_2783
A C++ library containing an eclectic mix of useful, advanced components.
|
A modifier to allow joinably transferring the work to the pool. More...
#include <thread_pool_base.hpp>
Public Types | |
typedef Pred | operation_type |
typedef execution_context_algo_buff_stack_type< work_distribution_mode, pool_traits_type::result_traits_, pool_traits_type::template algo_thread_wk_buffered, gen_wk_t, work_type > | execution_context |
This is a useful typedef to get at the execution_context. More... | |
Public Member Functions | |
__stdcall | swap_ranges_t (thread_pool_base &p, typename Colln::container_type::iterator b1, typename Colln::container_type::iterator e1, typename Colln::container_type::iterator b2, Pred const &pr) noexcept(true) FORCE_INLINE |
execution_context | process (cliques::element_type const cliques, typename pool_traits_type::thread_wk_elem_type::cfg_details_type::params const &cfg_parms) const FORCE_INLINE |
Joinably transfer the predicate to the pool. More... | |
Static Public Attributes | |
static constexpr ppd::generic_traits::memory_access_modes | memory_access_mode |
A modifier to allow joinably transferring the work to the pool.
Used internally be the library.
Definition at line 496 of file thread_pool_base.hpp.
typedef execution_context_algo_buff_stack_type<work_distribution_mode, pool_traits_type::result_traits_, pool_traits_type::template algo_thread_wk_buffered, gen_wk_t, work_type> jmmcg::ppd::private_::thread_pool_base< DM, Ps, PTT, Pt >::swap_ranges_t< Colln, Pred >::execution_context |
This is a useful typedef to get at the execution_context.
The execution_context is created by joinably transferring work into the pool. It has various uses, but is primarily used to atomically and synchronously wait on the results of the work on the closure_base-derived closure-derived object, as specified by the thread_wk_t object transferred into the pool. But it can also pass back specified exceptions that may be thrown by the work. It can also be used to asynchronously test if the work has been completed, and delete the work from the pool, if it has not been started.
Definition at line 1247 of file thread_pool_base_impl.hpp.
typedef Pred jmmcg::ppd::private_::thread_pool_base< DM, Ps, PTT, Pt >::swap_ranges_t< Colln, Pred >::operation_type |
Definition at line 1229 of file thread_pool_base_impl.hpp.
|
inlinenoexcept |
Definition at line 1260 of file thread_pool_base_impl.hpp.
References jmmcg::ppd::private_::priority_t< joinable_t, TPB, Pri >::operator<<().
|
inline |
Joinably transfer the predicate to the pool.
Definition at line 1269 of file thread_pool_base_impl.hpp.
|
staticconstexpr |
To assist in allowing compile-time computation of the algorithmic order of the threading model.
Definition at line 1252 of file thread_pool_base_impl.hpp.