Struct io_uring::IoUring [−][src]
IoUring instance
Implementations
impl IoUring[src]
pub fn new(entries: u32) -> Result<IoUring>[src]
Create a new IoUring instance with default configuration parameters. See Builder to
customize it further.
The entries sets the size of queue,
and its value should be the power of two.
#[must_use]pub fn builder() -> Builder[src]
pub fn submitter(&self) -> Submitter<'_>[src]
Get the submitter of this io_uring instance, which can be used to submit submission queue events to the kernel for execution and to register files or buffers with it.
pub fn params(&self) -> &Parameters[src]
Get the parameters that were used to construct this instance.
pub fn submit(&self) -> Result<usize>[src]
Initiate asynchronous I/O. See Submitter::submit for more details.
pub fn submit_and_wait(&self, want: usize) -> Result<usize>[src]
Initiate and/or complete asynchronous I/O. See Submitter::submit_and_wait for more
details.
pub fn split(
&mut self
) -> (Submitter<'_>, SubmissionQueue<'_>, CompletionQueue<'_>)[src]
&mut self
) -> (Submitter<'_>, SubmissionQueue<'_>, CompletionQueue<'_>)
Get the submitter, submission queue and completion queue of the io_uring instance. This can be used to operate on the different parts of the io_uring instance independently.
If you use this method to obtain sq and cq,
please note that you need to drop or sync the queue before and after submit,
otherwise the queue will not be updated.
pub fn submission(&mut self) -> SubmissionQueue<'_>[src]
Get the submission queue of the io_uring instance. This is used to send I/O requests to the kernel.
pub unsafe fn submission_shared(&self) -> SubmissionQueue<'_>[src]
Get the submission queue of the io_uring instance from a shared reference.
Safety
No other SubmissionQueues may exist when calling this function.
pub fn completion(&mut self) -> CompletionQueue<'_>ⓘNotable traits for CompletionQueue<'_>
impl Iterator for CompletionQueue<'_> type Item = Entry;[src]
Notable traits for CompletionQueue<'_>
impl Iterator for CompletionQueue<'_> type Item = Entry;Get completion queue of the io_uring instance. This is used to receive I/O completion events from the kernel.
pub unsafe fn completion_shared(&self) -> CompletionQueue<'_>ⓘNotable traits for CompletionQueue<'_>
impl Iterator for CompletionQueue<'_> type Item = Entry;[src]
Notable traits for CompletionQueue<'_>
impl Iterator for CompletionQueue<'_> type Item = Entry;Get the completion queue of the io_uring instance from a shared reference.
Safety
No other CompletionQueues may exist when calling this function.
pub fn owned_split(self) -> (SubmitterUring, SubmissionUring, CompletionUring)[src]
Trait Implementations
impl AsRawFd for IoUring[src]
impl Drop for IoUring[src]
impl Send for IoUring[src]
impl Sync for IoUring[src]
Auto Trait Implementations
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized, [src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized, [src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized, [src]
T: ?Sized,
pub fn borrow_mut(&mut self) -> &mut T[src]
impl<T> From<T> for T[src]
impl<T, U> Into<U> for T where
U: From<T>, [src]
U: From<T>,
impl<T, U> TryFrom<U> for T where
U: Into<T>, [src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
pub fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>, [src]
U: TryFrom<T>,