SObjectizer-5 Extra
Namespaces | Functions
so_5::extra::mchains::fixed_size Namespace Reference

Namespaces

 details
 

Functions

template<std::size_t Size>
mchain_t create_mchain (environment_t &env, so_5::mchain_props::overflow_reaction_t overflow_reaction)
 Helper function for creation of fixed-size mchain. More...
 
template<std::size_t Size>
mchain_t create_mchain (environment_t &env, so_5::mchain_props::duration_t wait_timeout, so_5::mchain_props::overflow_reaction_t overflow_reaction)
 Helper function for creation of fixed-size mchain. More...
 
template<std::size_t Size>
mchain_t create_mchain (environment_t &env, const so_5::mchain_params_t &params)
 Helper function for creation of fixed-size mchain. More...
 

Function Documentation

◆ create_mchain() [1/3]

template<std::size_t Size>
mchain_t so_5::extra::mchains::fixed_size::create_mchain ( environment_t &  env,
so_5::mchain_props::overflow_reaction_t  overflow_reaction 
)

Helper function for creation of fixed-size mchain.

Creates a mchain without waiting on attempt to push a new message into full mchain.

Usage example:

so_5::wrapped_env_t sobj;
auto reply_ch = so_5::extra::mchains::fixed_size::create_mchain<1>(
sobj.environment(),
so_5::mchain_props::overflow_reaction_t::drop_newest);

v.1.4.0

Examples:
env_infrastructures/asio/resolve_interactive/main.cpp, enveloped_msg/time_limited_delivery/main.cpp, and sync/mchains/main.cpp.

Definition at line 126 of file fixed_size.hpp.

◆ create_mchain() [2/3]

template<std::size_t Size>
mchain_t so_5::extra::mchains::fixed_size::create_mchain ( environment_t &  env,
so_5::mchain_props::duration_t  wait_timeout,
so_5::mchain_props::overflow_reaction_t  overflow_reaction 
)

Helper function for creation of fixed-size mchain.

Creates a mchain with waiting on attempt to push a new message into full mchain.

Usage example:

so_5::wrapped_env_t sobj;
auto reply_ch = so_5::extra::mchains::fixed_size::create_mchain<5>(
sobj.environment(),
std::chrono::milliseconds{250},
so_5::mchain_props::overflow_reaction_t::remove_oldest);

v.1.4.0

Definition at line 168 of file fixed_size.hpp.

◆ create_mchain() [3/3]

template<std::size_t Size>
mchain_t so_5::extra::mchains::fixed_size::create_mchain ( environment_t &  env,
const so_5::mchain_params_t &  params 
)

Helper function for creation of fixed-size mchain.

Usage example:

so_5::wrapped_env_t sobj;
auto params = so_5::make_limited_with_waiting_mchain_params(
1, // Will be ignored.
so_5::mchain_props::memory_usage_t::preallocated, // Will be ignored.
so_5::mchain_props::overflow_reaction_t::throw_exception,
std::chrono::seconds{3});
params.disable_msg_tracing();
params.not_empty_notificator([]{...});
auto reply_ch = so_5::extra::mchains::fixed_size::create_mchain<20>(
sobj.environment(),
params);
Attention
Value of params.capacity() will be ignored.

v.1.4.0

Definition at line 219 of file fixed_size.hpp.