Эта функция используется для считывания определенного количества байтов данных с устройства случайного доступа в указанном смещение. Звонок будет блокироваться до тех пор, пока не будет выполнено одно из следующих условий:
Поставляемые буферы заполнены. То есть переданные байты равны сумме буферных размеров.
Объект функции завершения_условия возвращает 0.
Эта операция реализована с точки зрения нуля или более вызовов функции read_some_at устройства.
Устройство, с которого следует считывать данные. Тип должен поддерживать концепцию SyncRandomAccessReadDevice.
offset
Смещение, при котором будут считаны данные.
buffers
Один или несколько буферов, в которые будут считываться данные. Сумма размеров буфера указывает на максимальное количество байтов для чтения с устройства.
completion_condition
Объект функции должен быть вызван, чтобы определить, завершена ли операция чтения. Подпись объекта функции должна быть:
std::size_tcompletion_condition(// Result of latest read_some_at operation.constboost::system::error_code&error,// Number of bytes transferred so far.std::size_tbytes_transferred);
Обратное значение 0 означает, что операция чтения завершена. Ненулевое значение возврата указывает на максимальное количество байтов, которые будут считаны при следующем вызове функции read_some_at устройства.
ec
Установить, какая ошибка произошла, если таковая имеется.