use futures_util::stream::StreamExt;
use rs2_stream::rs2::*;
use std::time::Duration;
use tokio::runtime::Runtime;
fn main() {
let rt = Runtime::new().unwrap();
rt.block_on(async {
println!("Creating a stream that emits a value every 500ms using tick_rs extension method");
let stream = empty::<i32>().tick_rs(Duration::from_millis(500), "Tick!");
println!("Stream created. Collecting 5 values...");
let mut count = 0;
let mut stream = stream.take(5).boxed();
while let Some(item) = stream.next().await {
count += 1;
println!("Received item {}: {}", count, item);
}
println!("Example completed!");
});
}