pub struct Channel<T, const N: usize = UNLIMITED> {
pub tx: Outputs<T, N>,
pub rx: Inputs<T, N>,
}Fields§
§tx: Outputs<T, N>§rx: Inputs<T, N>Implementations§
Source§impl<T> Channel<T>
impl<T> Channel<T>
Sourcepub fn bounded(buffer: usize) -> Channel<T, UNLIMITED>
pub fn bounded(buffer: usize) -> Channel<T, UNLIMITED>
Creates a bounded connection.
Examples found in repository?
examples/basic.rs (line 6)
5pub async fn main() {
6 let (outputs, mut inputs) = async_flow::Channel::bounded(1).into_inner();
7
8 tokio::spawn(async move {
9 outputs.send("value1").await.unwrap();
10 outputs.send("value2").await.unwrap();
11 });
12
13 while let Some(message) = inputs.recv().await.unwrap() {
14 eprintln!("recv: {}", message);
15 }
16}Source§impl<T, const N: usize> Channel<T, N>
impl<T, const N: usize> Channel<T, N>
Sourcepub fn into_inner(self) -> (Outputs<T, N>, Inputs<T, N>)
pub fn into_inner(self) -> (Outputs<T, N>, Inputs<T, N>)
Examples found in repository?
examples/basic.rs (line 6)
5pub async fn main() {
6 let (outputs, mut inputs) = async_flow::Channel::bounded(1).into_inner();
7
8 tokio::spawn(async move {
9 outputs.send("value1").await.unwrap();
10 outputs.send("value2").await.unwrap();
11 });
12
13 while let Some(message) = inputs.recv().await.unwrap() {
14 eprintln!("recv: {}", message);
15 }
16}Trait Implementations§
Source§impl<T, const N: usize> From<(Sender<PortEvent<T>>, Receiver<PortEvent<T>>)> for Channel<T, N>
impl<T, const N: usize> From<(Sender<PortEvent<T>>, Receiver<PortEvent<T>>)> for Channel<T, N>
impl<T> Connection<T> for Channel<T>
Auto Trait Implementations§
impl<T, const N: usize> Freeze for Channel<T, N>
impl<T, const N: usize> RefUnwindSafe for Channel<T, N>
impl<T, const N: usize> Send for Channel<T, N>where
T: Send,
impl<T, const N: usize> Sync for Channel<T, N>where
T: Send,
impl<T, const N: usize> Unpin for Channel<T, N>
impl<T, const N: usize> UnwindSafe for Channel<T, N>
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more