about summary refs log tree commit diff
path: root/src/libstd/thread/mod.rs
diff options
context:
space:
mode:
authorFelix Raimundo <felix.raimundo@tweag.io>2017-05-07 16:49:18 +0200
committerFelix Raimundo <felix.raimundo@tweag.io>2017-05-07 18:40:06 +0200
commit12efc9d0faefdd18e715690c7ae30908d92b8fc5 (patch)
tree45f4d91e6601c1a2a97863e3927f7a9884f6eae2 /src/libstd/thread/mod.rs
parentced823e267c132fab172b1890b24073995e79ffa (diff)
downloadrust-12efc9d0faefdd18e715690c7ae30908d92b8fc5.tar.gz
rust-12efc9d0faefdd18e715690c7ae30908d92b8fc5.zip
Improve `thread::panicking` documentaion.
Part of #29378
Diffstat (limited to 'src/libstd/thread/mod.rs')
-rw-r--r--src/libstd/thread/mod.rs12
1 files changed, 12 insertions, 0 deletions
diff --git a/src/libstd/thread/mod.rs b/src/libstd/thread/mod.rs
index 4cbcfdbc2d7..04cd28df445 100644
--- a/src/libstd/thread/mod.rs
+++ b/src/libstd/thread/mod.rs
@@ -458,6 +458,16 @@ pub fn yield_now() {
 
 /// Determines whether the current thread is unwinding because of panic.
 ///
+/// A common use of this feature is to poison shared resources when writing
+/// unsafe code, by checking `panicking` when the `drop` is called.
+///
+/// This is usually not needed when writing safe code, as [`Mutex`es][Mutex]
+/// already poison themselves when a thread panics while holding the lock.
+///
+/// This can also be used in multithreaded applications, in order to send a
+/// message to other threads warning that a thread has panicked (e.g. for
+/// monitoring purposes).
+///
 /// # Examples
 ///
 /// ```should_panic
@@ -486,6 +496,8 @@ pub fn yield_now() {
 ///     panic!()
 /// }
 /// ```
+///
+/// [Mutex]: ../../std/sync/struct.Mutex.html
 #[inline]
 #[stable(feature = "rust1", since = "1.0.0")]
 pub fn panicking() -> bool {