Запуск<io_service
>цикла обработки событий объекта.
std::size_t run(
boost::system::error_code & ec);
Функциональные блоки<run()
>до тех пор, пока вся работа не будет завершена и не будет отправлено больше обработчиков, или до тех пор, пока<io_service
>не будет остановлено.
Несколько потоков могут вызывать функцию<run()
>для создания пула потоков, из которых<io_service
>может быть выполнено. Все потоки, которые ждут в бассейне, эквивалентны.<io_service
>может выбрать любой из них, чтобы вызвать обработчика.
Нормальный выход из функции<run()
>означает, что объект<io_service
>остановлен (функция<stopped()
>возвращается<true
>). Последующие призывы к<run()
>,<run_one()
>,<poll()
>или<poll_one()
>немедленно вернутся, если не будет предварительного призыва к<reset()
>.
- ec
Установить, какая ошибка произошла, если таковая имеется.
Количество исполнителей, которые были казнены.
Функция<run()
>не должна быть вызвана из нити, которая в настоящее время вызывает один из<run()
>,<run_one()
>,<poll()
>или<poll_one()
>на том же<io_service
>объекте.
Функция<poll()
>может также использоваться для отправки готовых обработчиков, но без блокировки.