Module miri::concurrency::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.
  • 0 is used to indicate that the id was not yet assigned and, therefore, is not a valid identifier.
  • A thread waiting on a conditional variable.
  • Futex 🔒
    The futex state.
  • A thread waiting on a futex.
  • Mutex 🔒
    The mutex state.
  • 0 is used to indicate that the id was not yet assigned and, therefore, is not a valid identifier.
  • RwLock 🔒
    The read-write lock state.
  • 0 is used to indicate that the id was not yet assigned and, therefore, is not a valid identifier.
  • The state of all synchronization variables.

Enums

Traits