- Notifications
You must be signed in to change notification settings - Fork56
Async multi-producer multi-consumer channel
License
Apache-2.0, MIT licenses found
Licenses found
smol-rs/async-channel
Folders and files
| Name | Name | Last commit message | Last commit date | |
|---|---|---|---|---|
Repository files navigation
An async multi-producer multi-consumer channel, where each message can be received by onlyone of all existing consumers.
There are two kinds of channels:
- Bounded channel with limited capacity.
- Unbounded channel with unlimited capacity.
A channel has theSender andReceiver side. Both sides are cloneable and can be sharedamong multiple threads.
When allSenders or allReceivers are dropped, the channel becomes closed. When achannel is closed, no more messages can be sent, but remaining messages can still be received.
The channel can also be closed manually by callingSender::close() orReceiver::close().
let(s, r) = async_channel::unbounded();assert_eq!(s.send("Hello").await,Ok(()));assert_eq!(r.recv().await,Ok("Hello"));
Licensed under either of
- Apache License, Version 2.0 (LICENSE-APACHE orhttp://www.apache.org/licenses/LICENSE-2.0)
- MIT license (LICENSE-MIT orhttp://opensource.org/licenses/MIT)
at your option.
Unless you explicitly state otherwise, any contribution intentionally submittedfor inclusion in the work by you, as defined in the Apache-2.0 license, shall bedual licensed as above, without any additional terms or conditions.
About
Async multi-producer multi-consumer channel
Topics
Resources
License
Apache-2.0, MIT licenses found
Licenses found
Uh oh!
There was an error while loading.Please reload this page.