Limit flood if intervals in stream

This commit is contained in:
Manuel Thalmann 2025-04-10 21:50:21 +02:00
parent b12bbc45c8
commit edbd13249c
Signed by: manuth
SSH key fingerprint: SHA256:HsMLC+7kJWALP6YCYCoopxNbUnghwSGLVcG76SECT5c

View file

@ -5,9 +5,10 @@ fn main() {
trpl::run(async { trpl::run(async {
let messages = get_messages().timeout(Duration::from_millis(200)); let messages = get_messages().timeout(Duration::from_millis(200));
let intervals = get_intervals() let intervals = get_intervals()
.map(|count| format!("Interval: {count}")) .map(|count| format!("Interval #{count}"))
.throttle(Duration::from_millis(100))
.timeout(Duration::from_secs(10)); .timeout(Duration::from_secs(10));
let merged = messages.merge(intervals); let merged = messages.merge(intervals).take(20);
let mut stream = pin!(merged); let mut stream = pin!(merged);
while let Some(result) = stream.next().await { while let Some(result) = stream.next().await {