pub struct CondvarInner { /* private fields */ }Expand description
Native condition variable implementation wrapping Condvar.
Implementations§
Source§impl CondvarInner
impl CondvarInner
Sourcepub fn wait<'a, T>(&self, guard: &mut MutexGuard<'a, T>)
pub fn wait<'a, T>(&self, guard: &mut MutexGuard<'a, T>)
Blocks the current thread until notified.
Sourcepub fn wait_for<'a, T>(
&self,
guard: &mut MutexGuard<'a, T>,
timeout: Duration,
) -> bool
pub fn wait_for<'a, T>( &self, guard: &mut MutexGuard<'a, T>, timeout: Duration, ) -> bool
Blocks the current thread until notified or the timeout expires. Returns true if timed out.
Sourcepub fn notify_one(&self)
pub fn notify_one(&self)
Wakes up one blocked thread.
Sourcepub fn notify_all(&self)
pub fn notify_all(&self)
Wakes up all blocked threads.
Trait Implementations§
Source§impl Debug for CondvarInner
impl Debug for CondvarInner
Auto Trait Implementations§
impl !Freeze for CondvarInner
impl RefUnwindSafe for CondvarInner
impl Send for CondvarInner
impl Sync for CondvarInner
impl Unpin for CondvarInner
impl UnsafeUnpin for CondvarInner
impl UnwindSafe for CondvarInner
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
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more