Когда мне нужен новый io_service?

#c #c 11 #boost #boost-asio

#c #c 11 #повышение #boost-asio

Вопрос:

В последнее время я много работаю boost::asio и обдумываю его документацию, которая не очень помогает в некоторых вопросах. Я не могу разобраться в нескольких вопросах, которые связаны друг с другом. Самое важное — когда мне нужно будет создать свою собственную io_service реализацию (и как это сделать правильно)?

Давайте рассмотрим пример. Я хочу обрабатывать связь с шиной сообщений asio . Библиотека, предоставляющая API, возвращает мне непрозрачный указатель на соединение, который позволяет мне только записывать запросы и читать ответы. Пока все хорошо. Все эти операции могут быть обработаны с помощью boost::asio::post operation в любом io_context really. Нужен ли мне новый io_service here, чтобы справиться с этим? Или io_object здесь достаточно an? Где провести черту?

Возможно, я действительно не понимаю, что представляют эти понятия ( io_service и io_object ), и это основная причина всей суеты

Комментарии:

1. Что такое io_object ?

2. @sehe AFAIK сокеты являются примерами io_object s

3. Они есть, просто вы ссылались на них с абсолютностью (используя identifier разметку), что заставило меня подумать, что вы имеете в виду что-то другое.