lock_api

Trait 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.

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementors§