Соединение не может быть завершено в Linux boost::asio::spawn ⇐ Linux
Соединение не может быть завершено в Linux boost::asio::spawn
Если сервер запускается после невозможности подключения. Почему? boost_1_73_0、Операционная система Linux
#include #include "boost/asio.hpp" #include "boost/asio/spawn.hpp" интервал основной() { boost::asio::io_context ctx; auto ep = boost::asio::ip::tcp::endpoint(boost::asio::ip::make_address("127.0.0.1"), 1560); бул isConnect = ложь; Боул isRun = ложь; boost::asio::ip::tcp::socket сокет (ctx); пока (правда) { если (!isConnect && !isRun) { boost::asio::spawn([&](boost::asio::yield_context y){ isRun = правда; boost::system::error_code ec; сокет.async_connect(ep, y[ec]); если (эк) { isRun = ложь; сокет.закрыть(); printf("закрыть\n"); } еще { isConnect = правда; printf("подключиться\n"); } }); } ctx.poll_one(); Сон(1000); } вернуть 0; } Он отлично работает в Windows. Мой пост выглядит в основном кодом, поэтому я добавил это предложение. Спасибо большое
Если сервер запускается после невозможности подключения. Почему? boost_1_73_0、Операционная система Linux
#include #include "boost/asio.hpp" #include "boost/asio/spawn.hpp" интервал основной() { boost::asio::io_context ctx; auto ep = boost::asio::ip::tcp::endpoint(boost::asio::ip::make_address("127.0.0.1"), 1560); бул isConnect = ложь; Боул isRun = ложь; boost::asio::ip::tcp::socket сокет (ctx); пока (правда) { если (!isConnect && !isRun) { boost::asio::spawn([&](boost::asio::yield_context y){ isRun = правда; boost::system::error_code ec; сокет.async_connect(ep, y[ec]); если (эк) { isRun = ложь; сокет.закрыть(); printf("закрыть\n"); } еще { isConnect = правда; printf("подключиться\n"); } }); } ctx.poll_one(); Сон(1000); } вернуть 0; } Он отлично работает в Windows. Мой пост выглядит в основном кодом, поэтому я добавил это предложение. Спасибо большое
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение