SObjectizer 5.8
|
Working thread for dispatchers. More...
#include <atomic>
#include <condition_variable>
#include <deque>
#include <memory>
#include <mutex>
#include <thread>
#include <utility>
#include <so_5/declspec.hpp>
#include <so_5/current_thread_id.hpp>
#include <so_5/event_queue.hpp>
#include <so_5/disp/mpsc_queue_traits/pub.hpp>
#include <so_5/stats/work_thread_activity.hpp>
#include <so_5/stats/impl/activity_tracking.hpp>
#include <so_5/impl/thread_join_stuff.hpp>
#include <so_5/details/rollback_on_exception.hpp>
#include <so_5/details/invoke_noexcept_code.hpp>
Go to the source code of this file.
Namespaces | |
namespace | so_5 |
Private part of message limit implementation. | |
namespace | so_5::disp |
Event dispatchers. | |
namespace | so_5::disp::reuse |
Reusable components for dispatchers. | |
namespace | so_5::disp::reuse::work_thread |
Implemetation details of dispatcher's working thread. | |
namespace | so_5::disp::reuse::work_thread::demand_queue_details |
namespace | so_5::disp::reuse::work_thread::details |
Typedefs | |
using | so_5::disp::reuse::work_thread::demand_container_t = std::deque< execution_demand_t > |
Typedef for demand's container. | |
using | so_5::disp::reuse::work_thread::demands_counter_t = std::atomic< std::size_t > |
Typedef for atomic demands counter. | |
using | so_5::disp::reuse::work_thread::demand_queue_no_activity_tracking_t |
An alias for demand_queue without activity tracking. | |
using | so_5::disp::reuse::work_thread::demand_queue_with_activity_tracking_t |
An alias for demand_queue with activity tracking. | |
using | so_5::disp::reuse::work_thread::work_thread_no_activity_tracking_t |
Type of work thread without activity tracking. | |
using | so_5::disp::reuse::work_thread::work_thread_with_activity_tracking_t |
Working thread with activity tracking. | |
Enumerations | |
enum class | so_5::disp::reuse::work_thread::extraction_result_t { so_5::disp::reuse::work_thread::demand_extracted = 1 , so_5::disp::reuse::work_thread::shutting_down = 2 , so_5::disp::reuse::work_thread::no_demands = 3 } |
Type for result of demand extraction. More... | |
enum class | so_5::disp::reuse::work_thread::details::status_t : int { so_5::disp::reuse::work_thread::details::stopped = 0 , so_5::disp::reuse::work_thread::details::working = 1 } |
Thread status flag. More... | |
Working thread for dispatchers.
Definition in file reuse/work_thread/work_thread.hpp.