Module sync

Source

Macros§

declare_id 🔒
We cannot use the newtype_index! macro because we have to use 0 as a sentinel value meaning that the identifier is not assigned. This is because the pthreads static initializers initialize memory with zeros (see the src/shims/sync.rs file).

Structs§

Condvar 🔒
The conditional variable state.
CondvarId
0 is used to indicate that the id was not yet assigned and, therefore, is not a valid identifier.
Futex 🔒
The futex state.
FutexRef
FutexWaiter 🔒
A thread waiting on a futex.
Mutex 🔒
The mutex state.
MutexRef
RwLock 🔒
The read-write lock state.
RwLockId
0 is used to indicate that the id was not yet assigned and, therefore, is not a valid identifier.
SynchronizationObjects
The state of all synchronization objects.

Constants§

LAZY_INIT_COOKIE
We designate an init`` field in all primitives. If init` is set to this, we consider the primitive initialized.

Traits§

EvalContextExt
EvalContextExtPriv 🔒