iter/iter.rs
1use background_runner::BackgroundRunner;
2use std::thread::sleep;
3use std::time::Duration;
4use std::time::Instant;
5
6fn main() {
7 let mut runner_iter = 0;
8
9 // Set up the runner, giving it the task to run
10 let runner = BackgroundRunner::new(move |iter| {
11 // Simulate some heavy work
12 sleep(Duration::from_millis(10));
13 println!("runner_iter = {runner_iter}, iter = {iter}");
14 runner_iter += 1;
15 });
16
17 let start = Instant::now();
18 let mut iter = 0;
19 while start.elapsed().as_millis() < 100 {
20 // Update the runner with the current loop iteration
21 runner.update(&iter);
22 iter += 1;
23 }
24}