summaryrefslogtreecommitdiff
path: root/vendor/flume/examples/async.rs
diff options
context:
space:
mode:
Diffstat (limited to 'vendor/flume/examples/async.rs')
-rw-r--r--vendor/flume/examples/async.rs21
1 files changed, 21 insertions, 0 deletions
diff --git a/vendor/flume/examples/async.rs b/vendor/flume/examples/async.rs
new file mode 100644
index 0000000..a562700
--- /dev/null
+++ b/vendor/flume/examples/async.rs
@@ -0,0 +1,21 @@
+#[cfg(feature = "async")]
+#[async_std::main]
+async fn main() {
+ let (tx, rx) = flume::bounded(1);
+
+ let t = async_std::task::spawn(async move {
+ while let Ok(msg) = rx.recv_async().await {
+ println!("Received: {}", msg);
+ }
+ });
+
+ tx.send_async("Hello, world!").await.unwrap();
+ tx.send_async("How are you today?").await.unwrap();
+
+ drop(tx);
+
+ t.await;
+}
+
+#[cfg(not(feature = "async"))]
+fn main() {}