[−][src]Trait lock_api::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 the GuardSend
or GuardNoSend
helper 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) -> bool
Attempts to acquire this mutex without blocking. Returns true
if the lock was successfully acquired and false
otherwise.
fn unlock(&self)
Unlocks this mutex.