pub unsafe trait RawRwLockTimed: RawRwLock {
    type Duration;
    type Instant;

    // Required methods
    fn try_lock_shared_for(&self, timeout: Self::Duration) -> bool;
    fn try_lock_shared_until(&self, timeout: Self::Instant) -> bool;
    fn try_lock_exclusive_for(&self, timeout: Self::Duration) -> bool;
    fn try_lock_exclusive_until(&self, timeout: Self::Instant) -> bool;
}
Expand description

Additional methods for RwLocks which support locking with timeouts.

The Duration and Instant types are specified as associated types so that this trait is usable even in no_std environments.

Required Associated Types§

source

type Duration

Duration type used for try_lock_for.

source

type Instant

Instant type used for try_lock_until.

Required Methods§

source

fn try_lock_shared_for(&self, timeout: Self::Duration) -> bool

Attempts to acquire a shared lock until a timeout is reached.

source

fn try_lock_shared_until(&self, timeout: Self::Instant) -> bool

Attempts to acquire a shared lock until a timeout is reached.

source

fn try_lock_exclusive_for(&self, timeout: Self::Duration) -> bool

Attempts to acquire an exclusive lock until a timeout is reached.

source

fn try_lock_exclusive_until(&self, timeout: Self::Instant) -> bool

Attempts to acquire an exclusive lock until a timeout is reached.

Object Safety§

This trait is not object safe.

Implementors§