Method in task · Channel compiler

Channel::try_recv

pub fn try_recv() -> Result<T, ChannelError>
Import
use task::{Channel};
Source: compiler/src/prelude/task.hy

Takes the oldest value if there is one, without waiting.

Called on a Channel value as value.try_recv(…).

Returns#

Result<T, ChannelError>

Errors#

Err(ChannelError::Empty) when there is none, or Err(ChannelError::Closed) once the channel is closed and empty.

See also#

  • Channel: A bounded queue for passing values between tasks.
  • Channel::send: Adds value to the channel, waiting while it is full (a suspension point).
  • Channel::try_send: Adds value if there is room, without waiting.
  • Channel::recv: Takes the oldest value, waiting while the channel is empty (a suspension point).
  • Channel::close: Closes the channel: no more values can be sent.
  • Channel::len: Returns the number of values waiting to be received.
  • Channel::capacity: Returns the most values the channel can hold.
  • Channel::is_closed: Returns true once close has been called.
↑ ↓ navigate ↵ open