Struct concurrency_traits::queue::SemaphoreQueue [−][src]
pub struct SemaphoreQueue<T, S, CS> { /* fields omitted */ }
Expand description
A queue based on a semaphore to block on.
Implementations
impl<T, S, CS> SemaphoreQueue<T, S, CS> where
S: ReadoutSemaphore,
[src]
impl<T, S, CS> SemaphoreQueue<T, S, CS> where
S: ReadoutSemaphore,
[src]Trait Implementations
impl<T, S, CS> AsyncPrependQueue for SemaphoreQueue<T, S, CS> where
T: Send,
S: AsyncSemaphore + Send + Sync,
CS: ThreadFunctions,
[src]
impl<T, S, CS> AsyncPrependQueue for SemaphoreQueue<T, S, CS> where
T: Send,
S: AsyncSemaphore + Send + Sync,
CS: ThreadFunctions,
[src]impl<T, S, CS> AsyncQueue for SemaphoreQueue<T, S, CS> where
T: Send,
S: AsyncSemaphore + Send + Sync,
CS: ThreadFunctions,
[src]
impl<T, S, CS> AsyncQueue for SemaphoreQueue<T, S, CS> where
T: Send,
S: AsyncSemaphore + Send + Sync,
CS: ThreadFunctions,
[src]impl<T, S, CS> AsyncReverseQueue for SemaphoreQueue<T, S, CS> where
T: Send,
S: AsyncSemaphore + Send + Sync,
CS: ThreadFunctions,
[src]
impl<T, S, CS> AsyncReverseQueue for SemaphoreQueue<T, S, CS> where
T: Send,
S: AsyncSemaphore + Send + Sync,
CS: ThreadFunctions,
[src]impl<T, S, CS> AsyncTimeoutQueue for SemaphoreQueue<T, S, CS> where
T: Send,
S: AsyncTimeoutSemaphore + Send + Sync,
CS: ThreadFunctions,
[src]
impl<T, S, CS> AsyncTimeoutQueue for SemaphoreQueue<T, S, CS> where
T: Send,
S: AsyncTimeoutSemaphore + Send + Sync,
CS: ThreadFunctions,
[src]impl<T, S, CS> Default for SemaphoreQueue<T, S, CS> where
S: Default,
[src]
impl<T, S, CS> Default for SemaphoreQueue<T, S, CS> where
S: Default,
[src]impl<T, S, CS> PrependQueue for SemaphoreQueue<T, S, CS> where
S: Semaphore,
CS: ThreadFunctions,
[src]
impl<T, S, CS> PrependQueue for SemaphoreQueue<T, S, CS> where
S: Semaphore,
CS: ThreadFunctions,
[src]fn push_front(&self, value: Self::Item)
[src]
fn push_front(&self, value: Self::Item)
[src]Adds an item to the front of the queue blocking until able
impl<T, S, CS> Queue for SemaphoreQueue<T, S, CS> where
S: Semaphore,
CS: ThreadFunctions,
[src]
impl<T, S, CS> Queue for SemaphoreQueue<T, S, CS> where
S: Semaphore,
CS: ThreadFunctions,
[src]impl<T, S, CS> ReverseQueue for SemaphoreQueue<T, S, CS> where
S: Semaphore,
CS: ThreadFunctions,
[src]
impl<T, S, CS> ReverseQueue for SemaphoreQueue<T, S, CS> where
S: Semaphore,
CS: ThreadFunctions,
[src]impl<T, S, CS> TimeoutQueue for SemaphoreQueue<T, S, CS> where
S: TimeoutSemaphore,
CS: ThreadFunctions,
[src]
impl<T, S, CS> TimeoutQueue for SemaphoreQueue<T, S, CS> where
S: TimeoutSemaphore,
CS: ThreadFunctions,
[src]impl<T, S, CS> TryPrependQueue for SemaphoreQueue<T, S, CS> where
S: TrySemaphore,
CS: ThreadFunctions,
[src]
impl<T, S, CS> TryPrependQueue for SemaphoreQueue<T, S, CS> where
S: TrySemaphore,
CS: ThreadFunctions,
[src]impl<T, S, CS> TryQueue for SemaphoreQueue<T, S, CS> where
S: TrySemaphore,
CS: ThreadFunctions,
[src]
impl<T, S, CS> TryQueue for SemaphoreQueue<T, S, CS> where
S: TrySemaphore,
CS: ThreadFunctions,
[src]impl<T, S, CS> TryReverseQueue for SemaphoreQueue<T, S, CS> where
S: TrySemaphore,
CS: ThreadFunctions,
[src]
impl<T, S, CS> TryReverseQueue for SemaphoreQueue<T, S, CS> where
S: TrySemaphore,
CS: ThreadFunctions,
[src]fn try_pop_back(&self) -> Option<Self::Item>
[src]
fn try_pop_back(&self) -> Option<Self::Item>
[src]Non blocking version of receive_back
impl<T, S, CS> AsyncDoubleEndedQueue for SemaphoreQueue<T, S, CS> where
T: Send,
S: AsyncSemaphore + Send + Sync,
CS: ThreadFunctions,
[src]
T: Send,
S: AsyncSemaphore + Send + Sync,
CS: ThreadFunctions,
impl<T, S, CS> DoubleEndedQueue for SemaphoreQueue<T, S, CS> where
S: Semaphore,
CS: ThreadFunctions,
[src]
S: Semaphore,
CS: ThreadFunctions,
impl<T, S, CS> TryDoubleEndedQueue for SemaphoreQueue<T, S, CS> where
S: TrySemaphore,
CS: ThreadFunctions,
[src]
S: TrySemaphore,
CS: ThreadFunctions,
Auto Trait Implementations
impl<T, S, CS> !RefUnwindSafe for SemaphoreQueue<T, S, CS>
impl<T, S, CS> Send for SemaphoreQueue<T, S, CS> where
S: Send,
T: Send,
S: Send,
T: Send,
impl<T, S, CS> Sync for SemaphoreQueue<T, S, CS> where
S: Sync,
T: Send,
S: Sync,
T: Send,
impl<T, S, CS> Unpin for SemaphoreQueue<T, S, CS> where
S: Unpin,
T: Unpin,
S: Unpin,
T: Unpin,
impl<T, S, CS> UnwindSafe for SemaphoreQueue<T, S, CS> where
S: UnwindSafe,
T: UnwindSafe,
S: UnwindSafe,
T: UnwindSafe,