SObjectizer
5.5
|
An implementation of advanced thread pool dispatcher. More...
#include <so_5/spinlocks.hpp>
#include <so_5/atomic_refcounted.hpp>
#include <so_5/event_queue.hpp>
#include <so_5/stats/impl/activity_tracking.hpp>
#include <so_5/disp/reuse/mpmc_ptr_queue.hpp>
#include <so_5/disp/thread_pool/impl/common_implementation.hpp>
#include <so_5/impl/thread_join_stuff.hpp>
#include <forward_list>
Go to the source code of this file.
Classes | |
class | so_5::disp::adv_thread_pool::impl::agent_queue_t |
Event queue for the agent (or cooperation). More... | |
struct | so_5::disp::adv_thread_pool::impl::agent_queue_t::demand_t |
Actual demand in event queue. More... | |
struct | so_5::disp::adv_thread_pool::impl::work_thread_details::common_data_t |
Main data for work_thread. More... | |
class | so_5::disp::adv_thread_pool::impl::work_thread_details::no_activity_tracking_impl_t |
Part of implementation of work thread without activity tracing. More... | |
class | so_5::disp::adv_thread_pool::impl::work_thread_details::with_activity_tracking_impl_t |
Part of implementation of work thread with activity tracing. More... | |
class | so_5::disp::adv_thread_pool::impl::work_thread_details::work_thread_template_t< Impl > |
Implementation of work_thread in form of template class. More... | |
struct | so_5::disp::adv_thread_pool::impl::adaptation_t |
Adaptation of common implementation of thread-pool-like dispatcher to the specific of this thread-pool dispatcher. More... | |
Namespaces | |
so_5 | |
Public part of message limit implementation. | |
so_5::disp | |
Event dispatchers. | |
so_5::disp::adv_thread_pool | |
Advanced thread pool dispatcher. | |
so_5::disp::adv_thread_pool::impl | |
Internal implementation details of advanced thread pool dispatcher. | |
so_5::disp::adv_thread_pool::impl::work_thread_details | |
Macros | |
#define | SO_5_CHECK_INVARIANT(what, data) |
Typedefs | |
using | so_5::disp::adv_thread_pool::impl::spinlock_t = so_5::default_spinlock_t |
using | so_5::disp::adv_thread_pool::impl::dispatcher_queue_t = so_5::disp::reuse::mpmc_ptr_queue_t< agent_queue_t > |
using | so_5::disp::adv_thread_pool::impl::agent_queue_ref_t = so_5::intrusive_ptr_t< agent_queue_t > |
A typedef of smart pointer for agent_queue. More... | |
using | so_5::disp::adv_thread_pool::impl::work_thread_no_activity_tracking_t = work_thread_details::work_thread_template_t< work_thread_details::no_activity_tracking_impl_t > |
Type of work thread without activity tracking. More... | |
using | so_5::disp::adv_thread_pool::impl::work_thread_with_activity_tracking_t = work_thread_details::work_thread_template_t< work_thread_details::with_activity_tracking_impl_t > |
Type of work thread without activity tracking. More... | |
template<typename Work_Thread > | |
using | so_5::disp::adv_thread_pool::impl::dispatcher_template_t = so_5::disp::thread_pool::common_implementation::dispatcher_t< Work_Thread, dispatcher_queue_t, agent_queue_t, bind_params_t, adaptation_t > |
Template for dispatcher. More... | |
An implementation of advanced thread pool dispatcher.
#define SO_5_CHECK_INVARIANT | ( | what, | |
data | |||
) |