Construct and open a
template< typename ExecutionContext> basic_channel( ExecutionContext & context, std::size_t max_buffer_size = 0, typename constraint< is_convertible< ExecutionContext &, execution_context & >::value, defaulted_constraint >::type = defaulted_constraint());
This constructor creates and opens a channel.
An execution context which provides the I/O executor that the channel will use, by default, to dispatch handlers for any asynchronous operations performed on the channel.
The maximum number of messages that may be buffered in the channel.