about summary refs log tree commit diff
path: root/src/libstd/thread
diff options
context:
space:
mode:
authorFelix Raimundo <felix.raimundo@tweag.io>2017-05-07 19:26:32 +0200
committerFelix Raimundo <felix.raimundo@tweag.io>2017-05-07 19:31:20 +0200
commitc9e5eab6ff54fa4c24ab79894c4415615195db7c (patch)
tree0734f77f902beacc7c08555cd6d86d3a621f892d /src/libstd/thread
parentddb9e50b45b9762e09d341cce8547055cbee4840 (diff)
downloadrust-c9e5eab6ff54fa4c24ab79894c4415615195db7c.tar.gz
rust-c9e5eab6ff54fa4c24ab79894c4415615195db7c.zip
Update the `thread::Thread` documentation.
- Copied the module documentation to `Thread`.
- Removed the example because it did not use any method of Thread.
Diffstat (limited to 'src/libstd/thread')
-rw-r--r--src/libstd/thread/mod.rs36
1 files changed, 12 insertions, 24 deletions
diff --git a/src/libstd/thread/mod.rs b/src/libstd/thread/mod.rs
index 2f7a17af779..d4f6c6c67c5 100644
--- a/src/libstd/thread/mod.rs
+++ b/src/libstd/thread/mod.rs
@@ -721,33 +721,21 @@ struct Inner {
 
 #[derive(Clone)]
 #[stable(feature = "rust1", since = "1.0.0")]
-/// A handle to a thread.
+/// Threads are represented via the `Thread` type, which you can get in one of
+/// two ways:
 ///
-/// You can use it to identify a thread (by name, for example). Most of the
-/// time, there is no need to directly create a `Thread` struct using the
-/// constructor, instead you should use a function like `spawn` to create
-/// new threads, see the docs of [`Builder`] and [`spawn`] for more.
+/// * By spawning a new thread, e.g. using the [`thread::spawn`][`spawn`]
+///   function, and calling [`thread`][`JoinHandle::thread`] on the
+///   [`JoinHandle`].
+/// * By requesting the current thread, using the [`thread::current`] function.
 ///
-/// # Examples
+/// The [`thread::current`] function is available even for threads not spawned
+/// by the APIs of this module.
+///
+/// There is usualy no need to create a `Thread` struct yourself, one
+/// should instead use a function like `spawn` to create new threads, see the
+/// docs of [`Builder`] and [`spawn`] for more details.
 ///
-/// ```no_run
-/// # // Note that this example isn't executed by default because it causes
-/// # // deadlocks on Windows unfortunately (see #25824)
-/// use std::thread::Builder;
-///
-/// for i in 0..5 {
-///     let thread_name = format!("thread_{}", i);
-///     Builder::new()
-///         .name(thread_name) // Now you can identify which thread panicked
-///                            // thanks to the handle's name
-///         .spawn(move || {
-///             if i == 3 {
-///                  panic!("I'm scared!!!");
-///             }
-///         })
-///         .unwrap();
-/// }
-/// ```
 /// [`Builder`]: ../../std/thread/struct.Builder.html
 /// [`spawn`]: ../../std/thread/fn.spawn.html