pub struct UringReader { /* private fields */ }Expand description
io_uring-based reader for local files.
This reader uses a dedicated process-wide thread running an io_uring event loop for high-performance asynchronous I/O.
Trait Implementations§
Source§impl Debug for UringReader
impl Debug for UringReader
Source§impl DeepSizeOf for UringReader
impl DeepSizeOf for UringReader
Source§fn deep_size_of_children(&self, context: &mut Context) -> usize
fn deep_size_of_children(&self, context: &mut Context) -> usize
Returns an estimation of the heap-managed storage of this object.
This does not include the size of the object itself. Read more
Source§fn deep_size_of(&self) -> usize
fn deep_size_of(&self) -> usize
Returns an estimation of a total size of memory owned by the
object, including heap-managed storage. Read more
Source§impl Reader for UringReader
impl Reader for UringReader
Source§fn get_range(&self, range: Range<usize>) -> BoxFuture<'static, Result<Bytes>>
fn get_range(&self, range: Range<usize>) -> BoxFuture<'static, Result<Bytes>>
Read a range of bytes using io_uring.
fn path(&self) -> &Path
Source§fn block_size(&self) -> usize
fn block_size(&self) -> usize
Suggest optimal I/O size per storage device.
Source§fn io_parallelism(&self) -> usize
fn io_parallelism(&self) -> usize
Suggest optimal I/O parallelism per storage device.
Source§fn get_stream(&self) -> BoxFuture<'_, Result<ByteStream>>
fn get_stream(&self) -> BoxFuture<'_, Result<ByteStream>>
Read the entire object as a byte stream.
Source§fn get_range_stream(
&self,
range: Range<usize>,
) -> BoxFuture<'_, Result<ByteStream>>
fn get_range_stream( &self, range: Range<usize>, ) -> BoxFuture<'_, Result<ByteStream>>
Read a byte range as a byte stream.
Auto Trait Implementations§
impl Freeze for UringReader
impl RefUnwindSafe for UringReader
impl Send for UringReader
impl Sync for UringReader
impl Unpin for UringReader
impl UnsafeUnpin for UringReader
impl UnwindSafe for UringReader
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreCreates a shared type from an unshared type.