pub struct PooledDynamicQueue<T, S = Auto>where
S: SlotType<ItemHandle<T>>,{ /* private fields */ }Expand description
A dynamically growable, pooled MPMCQueue.
Unlike DynamicQueue, this queue may store any type, at the cost of higher runtime and higher memory.
Only available on feature dynamic + pool
Implementations§
Source§impl<T> PooledDynamicQueue<T, Auto>
impl<T> PooledDynamicQueue<T, Auto>
Trait Implementations§
Source§impl<T, S> Growable for PooledDynamicQueue<T, S>
impl<T, S> Growable for PooledDynamicQueue<T, S>
Source§impl<T, S> MPMCQueue for PooledDynamicQueue<T, S>where
S: SlotType<ItemHandle<T>>,
impl<T, S> MPMCQueue for PooledDynamicQueue<T, S>where
S: SlotType<ItemHandle<T>>,
Source§fn push(&self, item: Self::Item) -> Result<(), Self::Item>
fn push(&self, item: Self::Item) -> Result<(), Self::Item>
Attempts to push an item into the queue.
Returns the item as an error if the queue is full. Read more
Source§fn pop(&self) -> Option<Self::Item>
fn pop(&self) -> Option<Self::Item>
Attempts to pop an item from the queue.
Returns
None if the queue was empty. Read moreSource§fn len(&self) -> usize
fn len(&self) -> usize
Returns the current len of the queue.
The returned value may be stale under concurrent access and should not be used for synchronization.
Source§fn is_empty(&self) -> bool
fn is_empty(&self) -> bool
Indicates whether the queue is empty.
The returned value may be stale under concurrent access and should not be used for synchronization.
Source§fn is_full(&self) -> bool
fn is_full(&self) -> bool
Indicates whether the queue is full.
The returned value may be stale under concurrent access and should not be used for synchronization.
Auto Trait Implementations§
impl<T, S = Auto> !Freeze for PooledDynamicQueue<T, S>
impl<T, S = Auto> !UnwindSafe for PooledDynamicQueue<T, S>
impl<T, S> RefUnwindSafe for PooledDynamicQueue<T, S>where
S: RefUnwindSafe,
T: RefUnwindSafe,
impl<T, S> Send for PooledDynamicQueue<T, S>
impl<T, S> Sync for PooledDynamicQueue<T, S>
impl<T, S> Unpin for PooledDynamicQueue<T, S>
impl<T, S> UnsafeUnpin for PooledDynamicQueue<T, S>
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