Module aws_smithy_async::future::rendezvous
source · Expand description
Rendezvous channel implementation
Rendezvous channels are equivalent to a channel with a 0-sized buffer: A sender cannot send until there is an active receiver waiting. This implementation uses a Semaphore to record demand and coordinate with the receiver.
Rendezvous channels should be used with care—it’s inherently easy to deadlock unless they’re being
used from separate tasks or an a coroutine setup (e.g. crate::future::fn_stream::FnStream
)
Structs
- Receiver half of the rendezvous channel
- Sender-half of a channel
Functions
- Create a new rendezvous channel