Можно ли найти смещение или положение сокета потока, пока вы используете функцию boost, например async_read_some ?
Например, я использую следующий код в handle_read , когда программа читает большое количество текста json в сеансе сокета, и я хочу точно знать позицию потока, когда я читаю данные следующим образом:
socket.async_read_some(
boost::asio::buffer(data, max_length),
boost::bind(&Session::handle_read, this, shared_from_this(), boost::asio::placeholders::error, boost::asio::placeholders::bytes_transferred)
);
//socket.get_offset() or socket.get_position()
В документации я не могу найти подходящее решение для этого.
Максимальный размер буфера составляет 65536 байт, но сокет получает текст json еще больше.
Я не могу правильно добавить куски буфера в правильную позицию, потому что async делает это в каком-то виде случайного результата, но мне нужно сделать это правильно.