diff --git a/src/libstd/sync/mpsc/mod.rs b/src/libstd/sync/mpsc/mod.rs index 40b3e789ce4a3..7d5e1929cd2a1 100644 --- a/src/libstd/sync/mpsc/mod.rs +++ b/src/libstd/sync/mpsc/mod.rs @@ -1370,14 +1370,16 @@ impl Receiver { /// let (send, recv) = channel(); /// /// thread::spawn(move || { - /// send.send(1u8).unwrap(); - /// send.send(2u8).unwrap(); - /// send.send(3u8).unwrap(); + /// send.send(1).unwrap(); + /// send.send(2).unwrap(); + /// send.send(3).unwrap(); /// }); /// - /// for x in recv.iter() { - /// println!("Got: {}", x); - /// } + /// let mut iter = recv.iter(); + /// assert_eq!(iter.next(), Some(1)); + /// assert_eq!(iter.next(), Some(2)); + /// assert_eq!(iter.next(), Some(3)); + /// assert_eq!(iter.next(), None); /// ``` #[stable(feature = "rust1", since = "1.0.0")] pub fn iter(&self) -> Iter { @@ -1393,29 +1395,34 @@ impl Receiver { /// /// # Examples /// - /// ```rust + /// ```no_run /// use std::sync::mpsc::channel; /// use std::thread; /// use std::time::Duration; /// /// let (sender, receiver) = channel(); /// - /// // Nothing is in the buffer yet + /// // nothing is in the buffer yet /// assert!(receiver.try_iter().next().is_none()); - /// println!("Nothing in the buffer..."); /// /// thread::spawn(move || { + /// thread::sleep(Duration::from_secs(1)); /// sender.send(1).unwrap(); /// sender.send(2).unwrap(); /// sender.send(3).unwrap(); /// }); /// - /// println!("Going to sleep..."); - /// thread::sleep(Duration::from_secs(2)); // block for two seconds + /// // nothing is in the buffer yet + /// assert!(receiver.try_iter().next().is_none()); + /// + /// // block for two seconds + /// thread::sleep(Duration::from_secs(2)); /// - /// for x in receiver.try_iter() { - /// println!("Got: {}", x); - /// } + /// let mut iter = receiver.try_iter(); + /// assert_eq!(iter.next(), Some(1)); + /// assert_eq!(iter.next(), Some(2)); + /// assert_eq!(iter.next(), Some(3)); + /// assert_eq!(iter.next(), None); /// ``` #[stable(feature = "receiver_try_iter", since = "1.15.0")] pub fn try_iter(&self) -> TryIter {