4 releases
0.2.2 | Sep 1, 2020 |
---|---|
0.2.1 | Jun 29, 2020 |
0.2.0 | Mar 19, 2020 |
0.1.0 | Sep 29, 2019 |
#1026 in Asynchronous
10KB
174 lines
ert
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;
}
Dependencies
~4.5MB
~65K SLoC