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}