Structs§
Enums§
Constants§
- PTHREAD_
MUTEX_ 🔒KIND_ UNCHANGED - To differentiate “the mutex kind has not been changed” from “the mutex kind has been set to PTHREAD_MUTEX_DEFAULT and that is equal to some other mutex kind”, we make the default value of this field not PTHREAD_MUTEX_DEFAULT but this special flag.
Traits§
Functions§
- bytewise_
equal_ 🔒atomic_ relaxed - Do a bytewise comparison of the two places, using relaxed atomic reads. This is used to check if a synchronization primitive matches its static initializer value.
- cond_
create 🔒 - cond_
get_ 🔒data - cond_
init_ 🔒offset - condattr_
clock_ 🔒offset - condattr_
get_ 🔒clock_ id - condattr_
set_ 🔒clock_ id - condattr_
translate_ 🔒clock_ id - Translates the clock from what is stored in pthread_condattr_t to our enum.
- mutex_
create 🔒 - Eagerly create and initialize a new mutex.
- mutex_
get_ 🔒data - Returns the mutex data stored at the address that
mutex_ptr
points to. Will raise an error if the mutex has been moved since its first use. - mutex_
init_ 🔒offset - To ensure an initialized mutex that was moved somewhere else can be distinguished from
a statically initialized mutex that is used the first time, we pick some offset within
pthread_mutex_t
and use it as an “initialized” flag. - mutex_
kind_ 🔒from_ static_ initializer - Returns the kind of a static initializer.
- mutexattr_
get_ 🔒kind - mutexattr_
kind_ 🔒offset - mutexattr_
set_ 🔒kind - mutexattr_
translate_ 🔒kind - Translates the mutex kind from what is stored in pthread_mutexattr_t to our enum.
- rwlock_
get_ 🔒data - rwlock_
init_ 🔒offset