|
SObjectizer
5.5
|
Thread pool dispatcher. More...
Namespaces | |
| anonymous_namespace{pub.cpp} | |
| common_implementation | |
| Reusable implementation of some thread pool dispatcher functionality which can be used in other thread-pool-like dispatchers. | |
| impl | |
| Internal implementation details of thread pool dispatcher. | |
Classes | |
| class | bind_params_t |
| Parameters for binding agents to thread_pool dispatcher. More... | |
| class | disp_params_t |
| Alias for namespace with traits of event queue. More... | |
| class | private_dispatcher_t |
| An interface for thread_pool private dispatcher. More... | |
Typedefs | |
| using | params_t = bind_params_t |
| Alias for bind_params. More... | |
| using | private_dispatcher_handle_t = so_5::intrusive_ptr_t< private_dispatcher_t > |
| A handle for the thread_pool private dispatcher. More... | |
Enumerations | |
| enum | fifo_t { fifo_t::cooperation, fifo_t::individual } |
| Type of FIFO mechanism for agent's demands. More... | |
Functions | |
| SO_5_FUNC dispatcher_unique_ptr_t | create_disp ( disp_params_t params) |
| Create thread pool dispatcher. More... | |
| SO_5_FUNC private_dispatcher_handle_t | create_private_disp ( environment_t &env, disp_params_t disp_params, const std::string &data_sources_name_base) |
| Create a private thread_pool dispatcher. More... | |
| SO_5_FUNC disp_binder_unique_ptr_t | create_disp_binder ( std::string disp_name, const bind_params_t ¶ms) |
| Create dispatcher binder for thread pool dispatcher. More... | |
| std::size_t | default_thread_pool_size () |
| A helper function for detecting default thread count for thread pool. More... | |
| dispatcher_unique_ptr_t | create_disp (std::size_t thread_count) |
| Create thread pool dispatcher. More... | |
| dispatcher_unique_ptr_t | create_disp () |
| Create thread pool dispatcher. More... | |
| private_dispatcher_handle_t | create_private_disp (environment_t &env, const std::string &data_sources_name_base, disp_params_t disp_params) |
| Create a private thread_pool dispatcher. More... | |
| private_dispatcher_handle_t | create_private_disp (environment_t &env, std::size_t thread_count, const std::string &data_sources_name_base) |
| Create a private thread_pool dispatcher. More... | |
| private_dispatcher_handle_t | create_private_disp (environment_t &env, std::size_t thread_count) |
| Create a private thread_pool dispatcher. More... | |
| private_dispatcher_handle_t | create_private_disp (environment_t &env) |
| Create a private thread_pool dispatcher with the default count of working threads. More... | |
| template<typename Setter > | |
| disp_binder_unique_ptr_t | create_disp_binder (std::string disp_name, Setter params_setter) |
| Create dispatcher binder for thread pool dispatcher. More... | |
Thread pool dispatcher.
| using so_5::disp::thread_pool::params_t = typedef bind_params_t |
| using so_5::disp::thread_pool::private_dispatcher_handle_t = typedef so_5::intrusive_ptr_t< private_dispatcher_t > |
A handle for the thread_pool private dispatcher.
|
strong |
Type of FIFO mechanism for agent's demands.
| SO_5_FUNC dispatcher_unique_ptr_t so_5::disp::thread_pool::create_disp | ( | disp_params_t | params | ) |
Create thread pool dispatcher.
| params | Parameters for the dispatcher. |
|
inline |
Create thread pool dispatcher.
| thread_count | Count of working threads. |
|
inline |
Create thread pool dispatcher.
Size of pool is detected automatically.
| SO_5_FUNC disp_binder_unique_ptr_t so_5::disp::thread_pool::create_disp_binder | ( | std::string | disp_name, |
| const bind_params_t & | params | ||
| ) |
Create dispatcher binder for thread pool dispatcher.
| disp_name | Name of the dispatcher. |
| params | Parameters for binding. |
|
inline |
Create dispatcher binder for thread pool dispatcher.
Usage example:
| disp_name | Name of the dispatcher. |
| params_setter | Function for setting the binding's params. |
| SO_5_FUNC private_dispatcher_handle_t so_5::disp::thread_pool::create_private_disp | ( | environment_t & | env, |
| disp_params_t | disp_params, | ||
| const std::string & | data_sources_name_base | ||
| ) |
Create a private thread_pool dispatcher.
| env | SObjectizer Environment to work in. |
| disp_params | Parameters for the dispatcher. |
| data_sources_name_base | Value for creating names of data sources for run-time monitoring. |
|
inline |
Create a private thread_pool dispatcher.
This function is added to fix order of parameters and make it similar to create_private_disp from other dispatchers.
| env | SObjectizer Environment to work in. |
| data_sources_name_base | Value for creating names of data sources for run-time monitoring. |
| disp_params | Parameters for the dispatcher. |
|
inline |
Create a private thread_pool dispatcher.
| env | SObjectizer Environment to work in. |
| thread_count | Count of working threads. |
| data_sources_name_base | Value for creating names of data sources for run-time monitoring. |
|
inline |
Create a private thread_pool dispatcher.
| env | SObjectizer Environment to work in. |
| thread_count | Count of working threads. |
|
inline |
Create a private thread_pool dispatcher with the default count of working threads.
| env | SObjectizer Environment to work in. |
|
inline |
A helper function for detecting default thread count for thread pool.
1.8.14