функция RandomAccessFile::readList

Асинхронное чтение массива байтов из файла с определенной позиции

Синтаксис

Future[int]
RandomAccessFile.readList
(List[int] buffer, int offset, int bytes)

Передаваемые параметры

List[int] buffer, int offset, int bytes

Возвращаемое значение

Future[int]

Описание

Метод readList позволяет асинхронно прочитать массив байт из файла. В качестве параметров необходимо указать:

  • List[int] buffer - буфер, куда будет происходить чтение
  • int offset - позиция от начала файла, с которой начнется чтение
  • int bytes - требуемое для прочтения количество байт

После вызова данного метода, управление не блокируется, а сразу же возвращается в основной поток, а в качестве результата отдается объект типа Future, в котором, когда будет доступен, обрбрабатывается результат выполнения функции - успешное чтение или перехват ошибок.

В объект Future будет передана количество реально прочитанных байт, потому что, раньше чем прочитается требуемое количество, может быть достигнут конец файла.

Официальная документация (английский)