| use indicatif::ProgressBar; |
| |
| fn many_units_of_easy_work(n: u64, label: &str) { |
| let pb = ProgressBar::new(n); |
| |
| let mut sum = 0; |
| for i in 0..n { |
| // Any quick computation, followed by an update to the progress bar. |
| sum += 2 * i + 3; |
| pb.inc(1); |
| } |
| pb.finish(); |
| |
| println!("[{}] Sum ({}) calculated in {:?}", label, sum, pb.elapsed()); |
| } |
| |
| fn main() { |
| const N: u64 = 1 << 20; |
| |
| // Perform a long sequence of many simple computations monitored by a |
| // default progress bar. |
| many_units_of_easy_work(N, "Default progress bar "); |
| } |