[][src]Struct io_uring::IoUring

pub struct IoUring { /* fields omitted */ }

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.

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 unsafe fn enter(
    &self,
    to_submit: u32,
    min_complete: u32,
    flag: u32,
    sig: Option<&sigset_t>
) -> Result<usize>
[src]

Initiate and/or complete asynchronous I/O. See Submitter::enter for more details.

Safety

This provides a raw interface so developer must ensure that parameters are correct.

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<'_>, &mut SubmissionQueue, &mut CompletionQueue)
[src]

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.

pub fn submission(&mut self) -> &mut SubmissionQueue[src]

Get the submission queue of the io_uring instace. This is used to send I/O requests to the kernel.

pub fn completion(&mut self) -> &mut CompletionQueue[src]

Get completion queue. This is used to receive I/O completion events from the kernel.

pub fn concurrent(self) -> IoUring[src]

Make this IoUring instance concurrent.

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]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.