/// This enumeration is the list of the possible error outcomes for the /// [`try_send`](super::Sender::try_send) method. #[derive(PartialEq, Eq, Clone, Copy)] pubenum TrySendError<T> { /// The data could not be sent on the channel because the channel is /// currently full and sending would require blocking.
Full(T),
/// The receive half of the channel was explicitly closed or has been /// dropped.
Closed(T),
}
/// Error returned by `try_recv`. #[derive(PartialEq, Eq, Clone, Copy, Debug)] pubenum TryRecvError { /// This **channel** is currently empty, but the **Sender**(s) have not yet /// disconnected, so data may yet become available.
Empty, /// The **channel**'s sending half has become disconnected, and there will /// never be any more data received on it.
Disconnected,
}
impl fmt::Display for TryRecvError { fn fmt(&self, fmt: &mut fmt::Formatter<'_>) -> fmt::Result { match *self {
TryRecvError::Empty => "receiving on an empty channel".fmt(fmt),
TryRecvError::Disconnected => "receiving on a closed channel".fmt(fmt),
}
}
}
impl Error for TryRecvError {}
// ===== RecvError =====
/// Error returned by `Receiver`. #[derive(Debug, Clone)] #[doc(hidden)] #[deprecated(note = "This type is unused because recv returns an Option.")] pubstruct RecvError(());
#[derive(PartialEq, Eq, Clone, Copy)] /// Error returned by [`Sender::send_timeout`](super::Sender::send_timeout)]. pubenum SendTimeoutError<T> { /// The data could not be sent on the channel because the channel is /// full, and the timeout to send has elapsed.
Timeout(T),
/// The receive half of the channel was explicitly closed or has been /// dropped.
Closed(T),
}
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.