Rollup merge of #38513 - GuillaumeGomez:thread_fn_docs, r=frewsxcv
Add missing examples in some thread functions r? @frewsxcv
This commit is contained in:
commit
67bef48739
@ -318,20 +318,38 @@ impl Builder {
|
||||
// Free functions
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
/// Spawns a new thread, returning a `JoinHandle` for it.
|
||||
/// Spawns a new thread, returning a [`JoinHandle`] for it.
|
||||
///
|
||||
/// The join handle will implicitly *detach* the child thread upon being
|
||||
/// dropped. In this case, the child thread may outlive the parent (unless
|
||||
/// the parent thread is the main thread; the whole process is terminated when
|
||||
/// the main thread finishes.) Additionally, the join handle provides a `join`
|
||||
/// the main thread finishes). Additionally, the join handle provides a [`join`]
|
||||
/// method that can be used to join the child thread. If the child thread
|
||||
/// panics, `join` will return an `Err` containing the argument given to
|
||||
/// `panic`.
|
||||
/// panics, [`join`] will return an [`Err`] containing the argument given to
|
||||
/// [`panic`].
|
||||
///
|
||||
/// # Panics
|
||||
///
|
||||
/// Panics if the OS fails to create a thread; use `Builder::spawn`
|
||||
/// Panics if the OS fails to create a thread; use [`Builder::spawn`]
|
||||
/// to recover from such errors.
|
||||
///
|
||||
/// [`JoinHandle`]: ../../std/thread/struct.JoinHandle.html
|
||||
/// [`join`]: ../../std/thread/struct.JoinHandle.html#method.join
|
||||
/// [`Err`]: ../../std/result/enum.Result.html#variant.Err
|
||||
/// [`panic!`]: ../../std/macro.panic.html
|
||||
/// [`Builder::spawn`]: ../../std/thread/struct.Builder.html#method.spawn
|
||||
///
|
||||
/// # Examples
|
||||
///
|
||||
/// ```
|
||||
/// use std::thread;
|
||||
///
|
||||
/// let handler = thread::spawn(|| {
|
||||
/// // thread code
|
||||
/// });
|
||||
///
|
||||
/// handler.join().unwrap();
|
||||
/// ```
|
||||
#[stable(feature = "rust1", since = "1.0.0")]
|
||||
pub fn spawn<F, T>(f: F) -> JoinHandle<T> where
|
||||
F: FnOnce() -> T, F: Send + 'static, T: Send + 'static
|
||||
@ -341,7 +359,7 @@ pub fn spawn<F, T>(f: F) -> JoinHandle<T> where
|
||||
|
||||
/// Gets a handle to the thread that invokes it.
|
||||
///
|
||||
/// #Examples
|
||||
/// # Examples
|
||||
///
|
||||
/// Getting a handle to the current thread with `thread::current()`:
|
||||
///
|
||||
@ -366,6 +384,14 @@ pub fn current() -> Thread {
|
||||
}
|
||||
|
||||
/// Cooperatively gives up a timeslice to the OS scheduler.
|
||||
///
|
||||
/// # Examples
|
||||
///
|
||||
/// ```
|
||||
/// use std::thread;
|
||||
///
|
||||
/// thread::yield_now();
|
||||
/// ```
|
||||
#[stable(feature = "rust1", since = "1.0.0")]
|
||||
pub fn yield_now() {
|
||||
imp::Thread::yield_now()
|
||||
@ -375,7 +401,7 @@ pub fn yield_now() {
|
||||
///
|
||||
/// # Examples
|
||||
///
|
||||
/// ```rust,should_panic
|
||||
/// ```should_panic
|
||||
/// use std::thread;
|
||||
///
|
||||
/// struct SomeStruct;
|
||||
@ -413,6 +439,15 @@ pub fn panicking() -> bool {
|
||||
/// specifics or platform-dependent functionality. Note that on unix platforms
|
||||
/// this function will not return early due to a signal being received or a
|
||||
/// spurious wakeup.
|
||||
///
|
||||
/// # Examples
|
||||
///
|
||||
/// ```no_run
|
||||
/// use std::thread;
|
||||
///
|
||||
/// // Let's sleep for 2 seconds:
|
||||
/// thread::sleep_ms(2000);
|
||||
/// ```
|
||||
#[stable(feature = "rust1", since = "1.0.0")]
|
||||
#[rustc_deprecated(since = "1.6.0", reason = "replaced by `std::thread::sleep`")]
|
||||
pub fn sleep_ms(ms: u32) {
|
||||
@ -433,7 +468,7 @@ pub fn sleep_ms(ms: u32) {
|
||||
///
|
||||
/// # Examples
|
||||
///
|
||||
/// ```rust,no_run
|
||||
/// ```no_run
|
||||
/// use std::{thread, time};
|
||||
///
|
||||
/// let ten_millis = time::Duration::from_millis(10);
|
||||
|
Loading…
Reference in New Issue
Block a user