[−][src]Struct tokio::sync::mpsc::UnboundedReceiver
Receive values from the associated UnboundedSender.
Instances are created by the
unbounded_channel function.
Methods
impl<T> UnboundedReceiver<T>[src]
pub async fn recv<'_>(&'_ mut self) -> Option<T>[src]
Receive the next value for this receiver.
None is returned when all Sender halves have dropped, indicating
that no further values can be sent on the channel.
Examples
use tokio::sync::mpsc; #[tokio::main] async fn main() { let (tx, mut rx) = mpsc::unbounded_channel(); tokio::spawn(async move { tx.send("hello").unwrap(); }); assert_eq!(Some("hello"), rx.recv().await); assert_eq!(None, rx.recv().await); }
Values are buffered:
use tokio::sync::mpsc; #[tokio::main] async fn main() { let (tx, mut rx) = mpsc::unbounded_channel(); tx.send("hello").unwrap(); tx.send("world").unwrap(); assert_eq!(Some("hello"), rx.recv().await); assert_eq!(Some("world"), rx.recv().await); }
pub fn close(&mut self)[src]
Closes the receiving half of a channel, without dropping it.
This prevents any further messages from being sent on the channel while still enabling the receiver to drain messages that are buffered.
Trait Implementations
Auto Trait Implementations
impl<T> !RefUnwindSafe for UnboundedReceiver<T>
impl<T> Send for UnboundedReceiver<T> where
T: Send,
T: Send,
impl<T> Sync for UnboundedReceiver<T> where
T: Send,
T: Send,
impl<T> Unpin for UnboundedReceiver<T>
impl<T> !UnwindSafe for UnboundedReceiver<T>
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized, [src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized, [src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized, [src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T[src]
impl<T> From<T> for T[src]
impl<T, U> Into<U> for T where
U: From<T>, [src]
U: From<T>,
impl<T, U> TryFrom<U> for T where
U: Into<T>, [src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>, [src]
U: TryFrom<T>,