diff options
| author | Corey Farwell <coreyf@rwell.org> | 2017-05-31 23:01:55 -0400 |
|---|---|---|
| committer | Corey Farwell <coreyf@rwell.org> | 2017-05-31 23:01:55 -0400 |
| commit | bcd1fe56c750b2549d633f161280e13dd348a095 (patch) | |
| tree | b90f19a30ee9b1dcb71fae50831f32124420d139 /src/libstd/sync | |
| parent | e0cc22b4bae8007c59fbe58f2c104ecd743d746a (diff) | |
| download | rust-bcd1fe56c750b2549d633f161280e13dd348a095.tar.gz rust-bcd1fe56c750b2549d633f161280e13dd348a095.zip | |
Rewrite doc examples for `Receiver::recv_timeout`.
Diffstat (limited to 'src/libstd/sync')
| -rw-r--r-- | src/libstd/sync/mpsc/mod.rs | 37 |
1 files changed, 33 insertions, 4 deletions
diff --git a/src/libstd/sync/mpsc/mod.rs b/src/libstd/sync/mpsc/mod.rs index 69507cada2b..744868e2e23 100644 --- a/src/libstd/sync/mpsc/mod.rs +++ b/src/libstd/sync/mpsc/mod.rs @@ -1252,14 +1252,43 @@ impl<T> Receiver<T> { /// /// # Examples /// + /// Successfully receiving value before encountering timeout: + /// + /// ```no_run + /// use std::thread; + /// use std::time::Duration; + /// use std::sync::mpsc; + /// + /// let (send, recv) = mpsc::channel(); + /// + /// thread::spawn(move || { + /// send.send('a').unwrap(); + /// }); + /// + /// assert_eq!( + /// recv.recv_timeout(Duration::from_millis(400)), + /// Ok('a') + /// ); + /// ``` + /// + /// Receiving an error upon reaching timeout: + /// /// ```no_run - /// use std::sync::mpsc::{self, RecvTimeoutError}; + /// use std::thread; /// use std::time::Duration; + /// use std::sync::mpsc; + /// + /// let (send, recv) = mpsc::channel(); /// - /// let (send, recv) = mpsc::channel::<()>(); + /// thread::spawn(move || { + /// thread::sleep(Duration::from_millis(800)); + /// send.send('a').unwrap(); + /// }); /// - /// let timeout = Duration::from_millis(100); - /// assert_eq!(Err(RecvTimeoutError::Timeout), recv.recv_timeout(timeout)); + /// assert_eq!( + /// recv.recv_timeout(Duration::from_millis(400)), + /// Err(mpsc::RecvTimeoutError::Timeout) + /// ); /// ``` #[stable(feature = "mpsc_recv_timeout", since = "1.12.0")] pub fn recv_timeout(&self, timeout: Duration) -> Result<T, RecvTimeoutError> { |
