Rollup merge of #51056 - tbu-:pr_once_new, r=dtolnay
Mention and use `Once::new` instead of `ONCE_INIT`
This commit is contained in:
commit
e0e598bb76
@ -73,16 +73,17 @@ use thread::{self, Thread};
|
||||
/// A synchronization primitive which can be used to run a one-time global
|
||||
/// initialization. Useful for one-time initialization for FFI or related
|
||||
/// functionality. This type can only be constructed with the [`ONCE_INIT`]
|
||||
/// value.
|
||||
/// value or the equivalent [`Once::new`] constructor.
|
||||
///
|
||||
/// [`ONCE_INIT`]: constant.ONCE_INIT.html
|
||||
/// [`Once::new`]: struct.Once.html#method.new
|
||||
///
|
||||
/// # Examples
|
||||
///
|
||||
/// ```
|
||||
/// use std::sync::{Once, ONCE_INIT};
|
||||
/// use std::sync::Once;
|
||||
///
|
||||
/// static START: Once = ONCE_INIT;
|
||||
/// static START: Once = Once::new();
|
||||
///
|
||||
/// START.call_once(|| {
|
||||
/// // run initialization here
|
||||
@ -180,10 +181,10 @@ impl Once {
|
||||
/// # Examples
|
||||
///
|
||||
/// ```
|
||||
/// use std::sync::{Once, ONCE_INIT};
|
||||
/// use std::sync::Once;
|
||||
///
|
||||
/// static mut VAL: usize = 0;
|
||||
/// static INIT: Once = ONCE_INIT;
|
||||
/// static INIT: Once = Once::new();
|
||||
///
|
||||
/// // Accessing a `static mut` is unsafe much of the time, but if we do so
|
||||
/// // in a synchronized fashion (e.g. write once or read all) then we're
|
||||
@ -248,10 +249,10 @@ impl Once {
|
||||
/// ```
|
||||
/// #![feature(once_poison)]
|
||||
///
|
||||
/// use std::sync::{Once, ONCE_INIT};
|
||||
/// use std::sync::Once;
|
||||
/// use std::thread;
|
||||
///
|
||||
/// static INIT: Once = ONCE_INIT;
|
||||
/// static INIT: Once = Once::new();
|
||||
///
|
||||
/// // poison the once
|
||||
/// let handle = thread::spawn(|| {
|
||||
@ -431,10 +432,10 @@ impl OnceState {
|
||||
/// ```
|
||||
/// #![feature(once_poison)]
|
||||
///
|
||||
/// use std::sync::{Once, ONCE_INIT};
|
||||
/// use std::sync::Once;
|
||||
/// use std::thread;
|
||||
///
|
||||
/// static INIT: Once = ONCE_INIT;
|
||||
/// static INIT: Once = Once::new();
|
||||
///
|
||||
/// // poison the once
|
||||
/// let handle = thread::spawn(|| {
|
||||
@ -452,9 +453,9 @@ impl OnceState {
|
||||
/// ```
|
||||
/// #![feature(once_poison)]
|
||||
///
|
||||
/// use std::sync::{Once, ONCE_INIT};
|
||||
/// use std::sync::Once;
|
||||
///
|
||||
/// static INIT: Once = ONCE_INIT;
|
||||
/// static INIT: Once = Once::new();
|
||||
///
|
||||
/// INIT.call_once_force(|state| {
|
||||
/// assert!(!state.poisoned());
|
||||
|
Loading…
Reference in New Issue
Block a user