pub async fn read_at(&self, pos: u64, size: usize) -> Result<ReadResult> {
        let source = self.file.reactor.upgrade().unwrap().read_buffered(
            self.as_raw_fd(),
            pos,
            size,
            self.file.scheduler.borrow().as_ref(),
        );
        let read_size = source.collect_rw().await.map_err(|source| {
            GlommioError::create_enhanced(
                source,
                "Reading",
                self.file.path.borrow().as_ref(),
                Some(self.as_raw_fd()),
            )
        })?;
        Ok(ReadResult::from_sliced_buffer(source, 0, read_size))
    }
/// Reads data at the specified position into a buffer allocated by this
/// library.
///
/// Note that this differs from [`DmaFile`]'s read APIs: that reflects the
/// fact that buffered reads need no specific alignment and io_uring will
/// not be able to use its own pre-allocated buffers for it anyway.
///
/// [`DmaFile`]: struct.DmaFile.html
/// Reads from a specific position in the file and returns the buffer.
Reads data at the specified position into a buffer allocated by this
library.

Note that this differs from [`DmaFile`]'s read APIs: that reflects the
fact that buffered reads need no specific alignment and io_uring will
not be able to use its own pre-allocated buffers for it anyway.

[`DmaFile`]: struct.DmaFile.html
Reads from a specific position in the file and returns the buffer.
Reads data at the specified position into a buffer allocated by this library . Note that this differs from [ ` DmaFile ` ] ' s read APIs : that reflects the fact that buffered reads need no specific alignment and io_uring will not be able to use its own pre - allocated buffers for it anyway . [ ` DmaFile ` ] : struct . DmaFile . html Reads from a specific position in the file and returns the buffer .
pub async fn read_at(&self, pos: u64, size: usize) -> Result<ReadResult> {
        let source = self.file.reactor.upgrade().unwrap().read_buffered(
            self.as_raw_fd(),
            pos,
            size,
            self.file.scheduler.borrow().as_ref(),
        );
        let read_size = source.collect_rw().await.map_err(|source| {
            GlommioError::create_enhanced(
                source,
                "Reading",
                self.file.path.borrow().as_ref(),
                Some(self.as_raw_fd()),
            )
        })?;
        Ok(ReadResult::from_sliced_buffer(source, 0, read_size))
    }
pub async fn read_at ( & self , pos : u64 , size : usize ) -> Result < ReadResult > { let source = self . file . reactor . upgrade ( ) . unwrap ( ) . read_buffered ( self . as_raw_fd ( ) , pos , size , self . file . scheduler . borrow ( ) . as_ref ( ) , ) ; let read_size = source . collect_rw ( ) . await . map_err ( | source | { GlommioError :: create_enhanced ( source , " " , self . file . path . borrow ( ) . as_ref ( ) , Some ( self . as_raw_fd ( ) ) , ) } ) ? ; Ok ( ReadResult :: from_sliced_buffer ( source , 0 , read_size ) ) }
Reads data at the specified position into a buffer allocated by this
library.
Reads data at the specified position into a buffer allocated by this library .
&self
pos
u64
size
usize
&self
pos
u64
size
usize