Trait RawMutex
pub unsafe trait RawMutex
Basic operations for a mutex.
Types implementing this trait can be used by Mutex to form a safe and
fully-functioning mutex type.
Safety
Implementations of this trait must ensure that the mutex is actually exclusive: a lock can't be acquired while the mutex is already locked.
Associated Types
type GuardMarker;Marker type which determines whether a lock guard should be
Send. Use one of theGuardSendorGuardNoSendhelper types here.
Associated Constants
const INIT: Self;Initial value for an unlocked mutex.
Required Methods
fn lock(&self)Acquires this mutex, blocking the current thread until it is able to do so.
fn try_lock(&self) -> boolAttempts to acquire this mutex without blocking. Returns
trueif the lock was successfully acquired andfalseotherwise.unsafe fn unlock(&self)Unlocks this mutex.
Safety
This method may only be called if the mutex is held in the current context, i.e. it must be paired with a successful call to
lock,try_lock,try_lock_forortry_lock_until.
Provided Methods
fn is_locked(&self) -> boolChecks whether the mutex is currently locked.