W3cubDocs

/Rust

Enum std::thread::LocalKeyState

pub enum LocalKeyState {
    Uninitialized,
    Valid,
    Destroyed,
}
🔬 This is a nightly-only experimental API. (thread_local_state #27716)state querying was recently added

Indicator of the state of a thread local storage key.

Variants

🔬 This is a nightly-only experimental API. (thread_local_state #27716)state querying was recently added

All keys are in this state whenever a thread starts. Keys will transition to the Valid state once the first call to with happens and the initialization expression succeeds.

Keys in the Uninitialized state will yield a reference to the closure passed to with so long as the initialization routine does not panic.

🔬 This is a nightly-only experimental API. (thread_local_state #27716)state querying was recently added

Once a key has been accessed successfully, it will enter the Valid state. Keys in the Valid state will remain so until the thread exits, at which point the destructor will be run and the key will enter the Destroyed state.

Keys in the Valid state will be guaranteed to yield a reference to the closure passed to with.

🔬 This is a nightly-only experimental API. (thread_local_state #27716)state querying was recently added

When a thread exits, the destructors for keys will be run (if necessary). While a destructor is running, and possibly after a destructor has run, a key is in the Destroyed state.

Keys in the Destroyed states will trigger a panic when accessed via with.

Trait Implementations

impl Debug for LocalKeyState [src]

Formats the value using the given formatter.

impl Eq for LocalKeyState [src]

impl PartialEq for LocalKeyState [src]

This method tests for self and other values to be equal, and is used by ==. Read more

This method tests for !=.

impl Copy for LocalKeyState [src]

impl Clone for LocalKeyState [src]

Returns a copy of the value. Read more

Performs copy-assignment from source. Read more

© 2010 The Rust Project Developers
Licensed under the Apache License, Version 2.0 or the MIT license, at your option.
https://doc.rust-lang.org/std/thread/enum.LocalKeyState.html