Crate parking_lot
source ·Expand description
This library provides implementations of Mutex
, RwLock
, Condvar
and
Once
that are smaller, faster and more flexible than those in the Rust
standard library. It also provides a ReentrantMutex
type.
Re-exports
pub use ::lock_api;
Structs
A Condition Variable
A synchronization primitive which can be used to run a one-time
initialization. Useful for one-time initialization for globals, FFI or
related functionality.
Raw fair mutex type backed by the parking lot.
Raw mutex type backed by the parking lot.
Raw reader-writer lock type backed by the parking lot.
Implementation of the
GetThreadId
trait for lock_api::ReentrantMutex
.A type indicating whether a timed wait on a condition variable returned
due to a time out or not.
Enums
Current state of a
Once
.Functions
Creates a new fair mutex in an unlocked state ready for use.
Creates a new mutex in an unlocked state ready for use.
Creates a new reentrant mutex in an unlocked state ready for use.
Creates a new instance of an
RwLock<T>
which is unlocked.Type Definitions
A mutual exclusive primitive that is always fair, useful for protecting shared data
An RAII implementation of a “scoped lock” of a mutex. When this structure is
dropped (falls out of scope), the lock will be unlocked.
An RAII mutex guard returned by
FairMutexGuard::map
, which can point to a
subfield of the protected data.An RAII mutex guard returned by
MutexGuard::map
, which can point to a
subfield of the protected data.An RAII mutex guard returned by
ReentrantMutexGuard::map
, which can point to a
subfield of the protected data.An RAII read lock guard returned by
RwLockReadGuard::map
, which can point to a
subfield of the protected data.An RAII write lock guard returned by
RwLockWriteGuard::map
, which can point to a
subfield of the protected data.A mutual exclusion primitive useful for protecting shared data
An RAII implementation of a “scoped lock” of a mutex. When this structure is
dropped (falls out of scope), the lock will be unlocked.
A mutex which can be recursively locked by a single thread.
An RAII implementation of a “scoped lock” of a reentrant mutex. When this structure
is dropped (falls out of scope), the lock will be unlocked.
A reader-writer lock
RAII structure used to release the shared read access of a lock when
dropped.
RAII structure used to release the upgradable read access of a lock when
dropped.
RAII structure used to release the exclusive write access of a lock when
dropped.