C++, как запустить 2 boost:asio: io_context одновременноC++

Программы на C++. Форум разработчиков
Ответить
Anonymous
 C++, как запустить 2 boost:asio: io_context одновременно

Сообщение Anonymous »


У меня есть 2 переменные boost::asio::io_context: одна для соединения между моим Raspberry Pi и моим Arduino, а другая для соединения между Raspberry Pi и клиентом через TCP. сервер. Я проверил оба соединения по отдельности, и они работают отлично. Однако когда я пытаюсь присоединиться к ним, это не работает. Я понимаю, что если создать два io.run, второй никогда не будет введен, так как программа застрянет в первом, так как мне вставить io.run внутри io_context.run()?

Мое главное:
boost::asio::io_context io_context; boost::asio::io_context io; интервал основной { //создаем объект сервера для приема входящих клиентских подключений сервер tcp_server (io_context); open_port_arduino(); start = std::chrono::high_solve_lock::now(); //time_init // записывает в ардуино с интервалом в 2 секунды tim.expires_after(boost::asio::chrono::секунды {2}); tim.async_wait(timer_handler); //читаем из ардуино start_read_arduino(); io.run(); io_context.run(); }
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C++»