есть идеи, почему stream.flush();
не работает?
boost::asio::ip::tcp::iostream stream("localhost","5000");
assert(stream.good());
stream << 1;
stream.flush();
while(true);
он сбрасывается только в том случае, если цикл удаляется и строка boost::this_thread::sleep(boost::posix_time::seconds(1));
выполняется (намного позже).
Спасибо
Обновление: я сделал еще несколько отладок, и проблема на самом деле не в команде сброса. Если я разрешаю своему коду подключаться к серверу netcat, все работает нормально. Я предполагаю, что проблема в том, что и клиент, и сервер находятся в одном процессе (я создаю две угрозы, одна действует как сервер, а другая - как клиент). Когда я помещаю их в отдельные процессы, все работает нормально, но когда оба находятся в одном процессе, передача останавливается до тех пор, пока не будет вызван сон... (это только для целей тестирования, позже оба будут работать на разных серверах).
Платформа WindowsXP.
Есть идеи, почему это происходит?