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::pagination_stream::fn_stream::FnStream
)
Modules§
- Errors for rendezvous channel
Structs§
- Receiver half of the rendezvous channel
- Sender-half of a channel
Functions§
- Create a new rendezvous channel