rust/library/std/src/thread
joboet 9f91c5099f
std: fix stdout-before-main
Fixes #130210.

Since #124881, `ReentrantLock` uses `ThreadId` to identify threads. This has the unfortunate consequence of breaking uses of `Stdout` before main: Locking the `ReentrantLock` that synchronizes the output will initialize the thread ID before the handle for the main thread is set in `rt::init`. But since that would overwrite the current thread ID, `thread::set_current` triggers an abort.

This PR fixes the problem by using the already initialized thread ID for constructing the main thread handle and allowing `set_current` calls that do not change the thread's ID.
2024-10-12 13:01:36 +02:00
..
local std: make thread::current available in all thread_local! destructors 2024-10-02 18:04:21 +02:00
current.rs std: fix stdout-before-main 2024-10-12 13:01:36 +02:00
local.rs Fix std tests for wasm32-wasip2 target 2024-09-29 04:48:13 +02:00
mod.rs std: fix stdout-before-main 2024-10-12 13:01:36 +02:00
scoped.rs Reformat using the new identifier sorting from rustfmt 2024-09-22 19:11:29 -04:00
tests.rs Reformat using the new identifier sorting from rustfmt 2024-09-22 19:11:29 -04:00