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 SubmissionQueue
s 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 CompletionQueue
s 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>,