SObjectizer  5.7
Public Member Functions | Protected Member Functions | Private Types | Private Attributes | List of all members
so_5::disp::reuse::work_thread::details::activity_tracking_impl_t Class Reference

Part of implementation of work thread with activity tracking. More...

#include <work_thread.hpp>

Inheritance diagram for so_5::disp::reuse::work_thread::details::activity_tracking_impl_t:
so_5::disp::reuse::work_thread::details::common_data_t< demand_queue_with_activity_tracking_t >

Public Member Functions

 activity_tracking_impl_t (work_thread_holder_t thread_holder, queue_traits::lock_factory_t queue_lock_factory)
 
so_5::stats::work_thread_activity_stats_t take_activity_stats ()
 Get the activity stats. More...
 

Protected Member Functions

void serve_demands_block (demand_container_t &demands)
 Main method for serving block of demands. More...
 
- Protected Member Functions inherited from so_5::disp::reuse::work_thread::details::common_data_t< demand_queue_with_activity_tracking_t >
 common_data_t (work_thread_holder_t thread_holder, queue_traits::lock_factory_t queue_lock_factory)
 

Private Types

using activity_tracking_traits = so_5::stats::activity_tracking_stuff::traits
 

Private Attributes

activity_tracking_traits::lock_t m_stats_lock
 Lock for manipulation of activity stats. More...
 
const so_5::stats::clock_type_t::time_point * m_activity_started_at {}
 Pointer to time_point object related to the current activity. More...
 
so_5::stats::activity_stats_t m_activity_stats {}
 Activity statistics. More...
 

Additional Inherited Members

- Protected Attributes inherited from so_5::disp::reuse::work_thread::details::common_data_t< demand_queue_with_activity_tracking_t >
work_thread_holder_t m_thread_holder
 Working thread. More...
 
std::atomic< status_tm_status
 Thread status flag. More...
 
demand_queue_with_activity_tracking_t m_queue
 Demands queue. More...
 
so_5::current_thread_id_t m_thread_id
 ID of working thread. More...
 
demands_counter_t m_demands_count
 A counter for calculating count of demands in the queue. More...
 

Detailed Description

Part of implementation of work thread with activity tracking.

Since
v.5.5.18

Member Typedef Documentation

◆ activity_tracking_traits

Constructor & Destructor Documentation

◆ activity_tracking_impl_t()

so_5::disp::reuse::work_thread::details::activity_tracking_impl_t::activity_tracking_impl_t ( work_thread_holder_t  thread_holder,
queue_traits::lock_factory_t  queue_lock_factory 
)
inline

Member Function Documentation

◆ serve_demands_block()

void so_5::disp::reuse::work_thread::details::activity_tracking_impl_t::serve_demands_block ( demand_container_t demands)
inlineprotected

Main method for serving block of demands.

Parameters
demandsBunch of demands to be processed.

◆ take_activity_stats()

so_5::stats::work_thread_activity_stats_t so_5::disp::reuse::work_thread::details::activity_tracking_impl_t::take_activity_stats ( )
inline

Get the activity stats.

Member Data Documentation

◆ m_activity_started_at

const so_5::stats::clock_type_t::time_point* so_5::disp::reuse::work_thread::details::activity_tracking_impl_t::m_activity_started_at {}
private

Pointer to time_point object related to the current activity.

Value nullptr means that there is no any event running on the work thread.

◆ m_activity_stats

so_5::stats::activity_stats_t so_5::disp::reuse::work_thread::details::activity_tracking_impl_t::m_activity_stats {}
private

Activity statistics.

◆ m_stats_lock

activity_tracking_traits::lock_t so_5::disp::reuse::work_thread::details::activity_tracking_impl_t::m_stats_lock
private

Lock for manipulation of activity stats.


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