Auto merge of #123550 - GnomedDev:remove-initial-arc, r=Noratrieb
Remove the `Arc` rt::init allocation for thread info Removes an allocation pre-main by just not storing anything in std:🧵:Thread for the main thread. - The thread name can just be a hard coded literal, as was done in #123433. - Storing ThreadId and Parker in a static that is initialized once at startup. This uses SyncUnsafeCell and MaybeUninit as this is quite performance critical and we don't need synchronization or to store a tag value and possibly leave in a panic.
This commit is contained in:
commit
f61306d47b
5 changed files with 124 additions and 58 deletions
|
@ -40,6 +40,7 @@
|
|||
//! }
|
||||
//!
|
||||
//! fn main() {
|
||||
//! drop(String::from("An allocation"));
|
||||
//! assert!(unsafe { HIT });
|
||||
//! }
|
||||
//! ```
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue