Я использую небольшой буфер (например, 128 байт) и хочу использовать «async_read_until» с большими входящими сообщениями по TCP-соединению (отбрасывая все, кроме последних 128 байтов до разделителя).
Как можноэто будет сделано?В документах ASIO не очень ясно, что происходит, когда предоставленный буфер недостаточно велик.
Вот мой код инициализации чтения
typedef boost::shared_ptr<boost::asio::streambuf >streambuf_ptr;
streambuf_ptr inBuf(new boost::asio::streambuf (128));
boost::asio::async_read_until(*sock, *inBuf, "\r\n\r\n", boost::bind(my_read_handler, sock, inBuf, boost::asio::placeholders::error, boost::asio::placeholders::bytes_transferred));