Trait lock_api::GetThreadId

source ·
pub unsafe trait GetThreadId {
    const INIT: Self;

    // Required method
    fn nonzero_thread_id(&self) -> NonZeroUsize;
}
Available on crate feature atomic_usize only.
Expand description

Helper trait which returns a non-zero thread ID.

The simplest way to implement this trait is to return the address of a thread-local variable.

§Safety

Implementations of this trait must ensure that no two active threads share the same thread ID. However the ID of a thread that has exited can be re-used since that thread is no longer active.

Required Associated Constants§

source

const INIT: Self

Initial value.

Required Methods§

source

fn nonzero_thread_id(&self) -> NonZeroUsize

Returns a non-zero thread ID which identifies the current thread of execution.

Object Safety§

This trait is not object safe.

Implementors§