[][src]Trait lock_api::RawMutex

pub unsafe trait RawMutex {
    type GuardMarker;

    const INIT: Self;

    fn lock(&self);
fn try_lock(&self) -> bool;
fn unlock(&self); }

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.

Loading content...

Associated Constants

const INIT: Self

Initial value for an unlocked mutex.

Loading content...

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.

fn unlock(&self)

Unlocks this mutex.

Loading content...

Implementors

Loading content...