12 stable releases (4 major)

5.0.0 Oct 22, 2024
4.2.2 Jul 18, 2024
4.2.1 Oct 16, 2023
4.1.0 May 15, 2023
1.0.0 Mar 13, 2016

#53 in Debugging

Download history 127696/week @ 2024-08-20 114967/week @ 2024-08-27 129387/week @ 2024-09-03 118298/week @ 2024-09-10 118439/week @ 2024-09-17 129077/week @ 2024-09-24 124138/week @ 2024-10-01 126538/week @ 2024-10-08 129715/week @ 2024-10-15 130477/week @ 2024-10-22 123275/week @ 2024-10-29 141949/week @ 2024-11-05 133850/week @ 2024-11-12 141850/week @ 2024-11-19 115895/week @ 2024-11-26 111714/week @ 2024-12-03

526,024 downloads per month
Used in 1,039 crates (39 directly)

MIT/Apache

11KB
82 lines

Thread-ID

Get a unique ID for the current thread in Rust.

Crates.io version Documentation

For diagnostics and debugging it can often be useful to get an ID that is different for every thread. Until Rust 1.14, the standard library did not expose a way to do that, hence this crate.

Example

use std::thread;
use thread_id;

let handle = thread::spawn(move || {
    println!("spawned thread has id {}", thread_id::get());
});

println!("main thread has id {}", thread_id::get());

handle.join().unwrap();

This will print two different numbers.

License

Thread-ID is licensed under either the Apache 2.0 license, or the MIT license, at your option. It may be used in free software as well as closed-source applications, both for commercial and non-commercial use under the conditions given in the license.

Contributing

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache 2.0 license, shall be dual licensed as above, without any additional terms or conditions.

Dependencies

~0–8MB
~61K SLoC