Trait lock_api::rwlock::RawRwLockUpgradeTimed

source ·
pub unsafe trait RawRwLockUpgradeTimed: RawRwLockUpgrade + RawRwLockTimed {
    // Required methods
    fn try_lock_upgradable_for(&self, timeout: Self::Duration) -> bool;
    fn try_lock_upgradable_until(&self, timeout: Self::Instant) -> bool;
    unsafe fn try_upgrade_for(&self, timeout: Self::Duration) -> bool;
    unsafe fn try_upgrade_until(&self, timeout: Self::Instant) -> bool;
}
Expand description

Additional methods for RwLocks which support upgradable locks and locking with timeouts.

Required Methods§

source

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

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

source

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

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

source

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

Attempts to upgrade an upgradable lock to an exclusive lock until a timeout is reached.

§Safety

This method may only be called if an upgradable lock is held in the current context.

source

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

Attempts to upgrade an upgradable lock to an exclusive lock until a timeout is reached.

§Safety

This method may only be called if an upgradable lock is held in the current context.

Object Safety§

This trait is not object safe.

Implementors§