
  -spec pread(IoDevice, LocNums) -> {ok, DataL} | eof | {error, Reason}
                 when
                     IoDevice :: io_device(),
                     LocNums ::
                         [{Location :: location(),
                           Number :: non_neg_integer()}],
                     DataL :: [Data],
                     Data :: string() | binary() | eof,
                     Reason :: posix() | badarg | terminated.

  Performs a sequence of pread/3 in one operation, which is more
  efficient than calling them one at a time. Returns {ok, [Data,
  ...]} or {error, Reason}, where each Data, the result of the
  corresponding pread, is either a list or a binary depending on
  the mode of the file, or eof if the requested position is beyond
  end of file.

  As the position is specified as a byte-offset, take special
  caution when working with files where encoding is set to
  something else than latin1, as not every byte position is a
  valid character boundary on such a file.
