diff --git a/library/std/src/sys_common/thread_info.rs b/library/std/src/sys_common/thread_info.rs index 38c9e50009a..cd570dca0ff 100644 --- a/library/std/src/sys_common/thread_info.rs +++ b/library/std/src/sys_common/thread_info.rs @@ -30,6 +30,13 @@ impl ThreadInfo { } } +/// Get an address that is unique per running thread. +/// +/// This can be used as a non-null usize-sized ID. +pub fn current_thread_unique_ptr() -> usize { + THREAD_INFO.with(|info| <*const _>::addr(info)) +} + pub fn current_thread() -> Option { ThreadInfo::with(|info| info.thread.clone()) }