Crate async_channel

source ·
Expand description

An asynchronous channel for Inter-Task Communication (ITC) with an internal queue for buffering messages.

This crate offers an asynchronous channel that allows multiple tasks to exchange messages through the use of a bounded-capacity intermediate buffer. Unlike the rendezvous channel, the sender and receiver do not need to rendezvous to send or receive data.

Only Send types can be sent or received through the channel.

This is not a zero-copy channel; to avoid copying large messages, use a reference type like Box or another layer of indirection.


  • The receiver side of a channel.
  • The sender (transmit) side of a channel.


  • Indicates whether channel is Connected or Disconnected
  • Error type for tracking different type of errors sender and receiver can encounter.


  • Create a new channel that allows senders and receivers to asynchronously exchange messages via an internal intermediary buffer.
  • Creates a new asynchronous channel with the specified deadlock prevention method.