Module threading

Module threading 

Source
Expand description

Type definitions for putting shared ownership and synchronized mutation behind the threading feature toggle.

That way, single-threaded applications will not have to use thread-safe primitives, and simply do not specify the ‘threading’ feature.

Functions§

downgrade_mut_to_ref
Downgrade a handle previously obtained with get_mut() to drop mutation support.
get_mut
Get a mutable reference through a MutableOnDemand for read-write access.
get_ref
Get a shared reference through a MutableOnDemand for read-only access.
lock
Get a mutable reference through a Mutable for read-write access.
make_mut
Get a mutable reference to the underlying data, with semantics similar to Arc::make_mut().
map_ref
Map a read guard into a sub-type it contains.

Type Aliases§

MappedRefGuard
A mapped reference created from a RefGuard
Mutable
A synchronization primitive which provides read-write access right away.
MutableOnDemand
A synchronization primitive which can start read-only and transition to support mutation.
OnceCellonce_cell
A thread-safe cell which can be written to only once.
OwnShared
A reference counted pointer type for shared ownership.
RefGuard
A guarded reference suitable for safekeeping in a struct.