ert
A combinator to control future execution order.
async
A combinator to control future execution order.
struct Data {
file: String,
tag: usize,
value: usize,
}
#[tokio::main]
async fn main() {
// Stream of `Data` coming over TCP.
let f = tcp_stream()
.map(|d| {
let tag = d.tag;
let f = async move {
let v = read_value_from_file(&d.file).await;
write_value_to_file(&d.file, v + d.value).await;
};
f.via_g(tag)
})
.buffer_unordered(100)
.for_each(|_| async {});
f.await;
}