libjmmcg  release_579_6_g8cffd
A C++ library containing an eclectic mix of useful, advanced components.
jmmcg::ppd::pool::thread_types::steal< generic_traits::return_data::joinable, thread_os_traits< generic_traits::MS_Win32, heavyweight_threading >, WQ > Class Template Reference

You can report back exceptions from this thread wrapper type. Oh - and make sure you construct the execution context too (because you get the exceptions through that type). More...

#include <pool_thread.hpp>

Inherits pool_thread< thread_os_traits< generic_traits::MS_Win32, heavyweight_threading >, WQ::have_work_type::atomic_t >, batch_details< WQ >, and non_copyable.

Public Types

typedef pool_thread< thread_os_traits< generic_traits::MS_Win32, heavyweight_threading >, typename WQ::have_work_type::atomic_t > base_t
 
typedef base_t::os_traits os_traits
 
typedef os_traits::thread_traits::model_type model_type
 
typedef os_traits::lock_traits lock_traits
 
typedef os_traits::thread_traits thread_traits
 
typedef batch_details< WQ > batch_type
 
typedef batch_type::signalled_work_queue_type signalled_work_queue_type
 
typedef base_t::exit_requested_type exit_requested_type
 

Public Member Functions

__stdcall steal (exit_requested_type &, signalled_work_queue_type &) noexcept(true)
 
 ~steal () noexcept(true)
 
void __fastcall process_a_batch (typename os_traits::thread_exception const &exception_thrown_in_thread)
 

Detailed Description

template<class WQ>
class jmmcg::ppd::pool::thread_types::steal< generic_traits::return_data::joinable, thread_os_traits< generic_traits::MS_Win32, heavyweight_threading >, WQ >

You can report back exceptions from this thread wrapper type. Oh - and make sure you construct the execution context too (because you get the exceptions through that type).

Definition at line 134 of file pool_thread.hpp.

Member Typedef Documentation

◆ base_t

template<class WQ >
typedef pool_thread<thread_os_traits<generic_traits::MS_Win32, heavyweight_threading>, typename WQ::have_work_type::atomic_t> jmmcg::ppd::pool::thread_types::steal< generic_traits::return_data::joinable, thread_os_traits< generic_traits::MS_Win32, heavyweight_threading >, WQ >::base_t

Definition at line 137 of file pool_thread.hpp.

◆ batch_type

template<class WQ >
typedef batch_details<WQ> jmmcg::ppd::pool::thread_types::steal< generic_traits::return_data::joinable, thread_os_traits< generic_traits::MS_Win32, heavyweight_threading >, WQ >::batch_type

Definition at line 142 of file pool_thread.hpp.

◆ exit_requested_type

template<class WQ >
typedef base_t::exit_requested_type jmmcg::ppd::pool::thread_types::steal< generic_traits::return_data::joinable, thread_os_traits< generic_traits::MS_Win32, heavyweight_threading >, WQ >::exit_requested_type

Definition at line 144 of file pool_thread.hpp.

◆ lock_traits

template<class WQ >
typedef os_traits::lock_traits jmmcg::ppd::pool::thread_types::steal< generic_traits::return_data::joinable, thread_os_traits< generic_traits::MS_Win32, heavyweight_threading >, WQ >::lock_traits

Definition at line 140 of file pool_thread.hpp.

◆ model_type

template<class WQ >
typedef os_traits::thread_traits::model_type jmmcg::ppd::pool::thread_types::steal< generic_traits::return_data::joinable, thread_os_traits< generic_traits::MS_Win32, heavyweight_threading >, WQ >::model_type

Definition at line 139 of file pool_thread.hpp.

◆ os_traits

template<class WQ >
typedef base_t::os_traits jmmcg::ppd::pool::thread_types::steal< generic_traits::return_data::joinable, thread_os_traits< generic_traits::MS_Win32, heavyweight_threading >, WQ >::os_traits

Definition at line 138 of file pool_thread.hpp.

◆ signalled_work_queue_type

template<class WQ >
typedef batch_type::signalled_work_queue_type jmmcg::ppd::pool::thread_types::steal< generic_traits::return_data::joinable, thread_os_traits< generic_traits::MS_Win32, heavyweight_threading >, WQ >::signalled_work_queue_type

Definition at line 143 of file pool_thread.hpp.

◆ thread_traits

template<class WQ >
typedef os_traits::thread_traits jmmcg::ppd::pool::thread_types::steal< generic_traits::return_data::joinable, thread_os_traits< generic_traits::MS_Win32, heavyweight_threading >, WQ >::thread_traits

Definition at line 141 of file pool_thread.hpp.

Constructor & Destructor Documentation

◆ steal()

template<class WQ >
jmmcg::ppd::pool::thread_types::steal< generic_traits::return_data::joinable, thread_os_traits< generic_traits::MS_Win32, heavyweight_threading >, WQ >::steal ( exit_requested_type exit_r,
signalled_work_queue_type work_q 
)
inlinenoexcept

Definition at line 73 of file pool_thread_impl.hpp.

◆ ~steal()

template<class WQ >
jmmcg::ppd::pool::thread_types::steal< generic_traits::return_data::joinable, thread_os_traits< generic_traits::MS_Win32, heavyweight_threading >, WQ >::~steal
inlinenoexcept

Definition at line 79 of file pool_thread_impl.hpp.

Member Function Documentation

◆ process_a_batch()

template<class WQ >
void __fastcall jmmcg::ppd::pool::thread_types::steal< generic_traits::return_data::joinable, thread_os_traits< generic_traits::MS_Win32, heavyweight_threading >, WQ >::process_a_batch ( typename os_traits::thread_exception const &  exception_thrown_in_thread)
inline

Definition at line 149 of file pool_thread.hpp.


The documentation for this class was generated from the following files: