Struct io_uring::cqueue::CompletionQueue[][src]

pub struct CompletionQueue<'a> { /* fields omitted */ }

An io_uring instance’s completion queue. This stores all the I/O operations that have completed.

Implementations

impl CompletionQueue<'_>[src]

pub fn sync(&mut self)[src]

Synchronize this type with the real completion queue.

This will flush any entries consumed in this iterator and will make available new entries in the queue if the kernel has produced some entries in the meantime.

pub fn overflow(&self) -> u32[src]

If queue is full and is_feature_nodrop is not set, new events may be dropped. This records the number of dropped events.

pub fn eventfd_disabled(&self) -> bool[src]

Whether eventfd notifications are disabled when a request is completed and queued to the CQ ring. This library currently does not provide a way to set it, so this will always be false.

Requires the unstable feature.

pub fn capacity(&self) -> usize[src]

Get the total number of entries in the completion queue ring buffer.

pub fn is_empty(&self) -> bool[src]

Returns true if there are no completion queue events to be processed.

pub fn is_full(&self) -> bool[src]

Returns true if the completion queue is at maximum capacity. If is_feature_nodrop is not set, this will cause any new completion queue events to be dropped by the kernel.

pub fn fill<'a>(
    &mut self,
    entries: &'a mut [MaybeUninit<Entry>]
) -> &'a mut [Entry]
[src]

Trait Implementations

impl Drop for CompletionQueue<'_>[src]

impl ExactSizeIterator for CompletionQueue<'_>[src]

impl Iterator for CompletionQueue<'_>[src]

type Item = Entry

The type of the elements being iterated over.

Auto Trait Implementations

impl<'a> RefUnwindSafe for CompletionQueue<'a>

impl<'a> !Send for CompletionQueue<'a>

impl<'a> !Sync for CompletionQueue<'a>

impl<'a> Unpin for CompletionQueue<'a>

impl<'a> UnwindSafe for CompletionQueue<'a>

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<I> IntoIterator for I where
    I: Iterator
[src]

type Item = <I as Iterator>::Item

The type of the elements being iterated over.

type IntoIter = I

Which kind of iterator are we turning this into?

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.