Struct std::sync::StaticCondvarUnstable [-] [+] [src]

pub struct StaticCondvar {
    // some fields omitted
}

Statically allocated condition variables.

This structure is identical to Condvar except that it is suitable for use in static initializers for other structures.

Example

fn main() { use std::sync::{StaticCondvar, CONDVAR_INIT}; static CVAR: StaticCondvar = CONDVAR_INIT; }
use std::sync::{StaticCondvar, CONDVAR_INIT};

static CVAR: StaticCondvar = CONDVAR_INIT;

Methods

impl StaticCondvar

fn wait<'a, T>(&'static self, guard: MutexGuard<'a, T>) -> LockResult<MutexGuard<'a, T>>

Block the current thread until this condition variable receives a notification.

See Condvar::wait.

fn wait_timeout<'a, T>(&'static self, guard: MutexGuard<'a, T>, dur: Duration) -> LockResult<(MutexGuard<'a, T>, bool)>

Wait on this condition variable for a notification, timing out after a specified duration.

See Condvar::wait_timeout.

fn wait_timeout_with<'a, T, F>(&'static self, guard: MutexGuard<'a, T>, dur: Duration, f: F) -> LockResult<(MutexGuard<'a, T>, bool)> where F: FnMut(LockResult<&mut T>) -> bool

Wait on this condition variable for a notification, timing out after a specified duration.

The implementation will repeatedly wait while the duration has not passed and the function returns false.

See Condvar::wait_timeout_with.

fn notify_one(&'static self)

Wake up one blocked thread on this condvar.

See Condvar::notify_one.

fn notify_all(&'static self)

Wake up all blocked threads on this condvar.

See Condvar::notify_all.

unsafe fn destroy(&'static self)

Deallocate all resources associated with this static condvar.

This method is unsafe to call as there is no guarantee that there are no active users of the condvar, and this also doesn't prevent any future users of the condvar. This method is required to be called to not leak memory on all platforms.

Trait Implementations

impl Send for StaticCondvar

impl Sync for StaticCondvar