boost::corosio::tcp_server::set_workers

Set the worker pool.

Synopsis

template<std::ranges::forward_range Range>
requires std::convertible_to<
            decltype(std::to_address(
                std::declval<std::ranges::range_value_t<Range>&>())),
            worker_base*>
void
set_workers(Range&& workers);

Description

Replaces any existing workers with the given range. Any previous workers are released and the idle/active lists are cleared before populating with new workers.

Example

std::vector<std::unique_ptr<my_worker>> workers;
for(int i = 0; i < 100; ++i)
    workers.push_back(std::make_unique<my_worker>(ctx));
srv.set_workers(std::move(workers));

Template Parameters

Name Description

Range

Forward range of pointer‐like objects to worker_base.

Parameters

Name Description

workers

Range of workers to manage. Each element must support std::to_address() yielding worker_base*.

Created with MrDocs