mirror of https://github.com/KaiserY/trpl-zh-cn
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
34 lines
916 B
34 lines
916 B
3 years ago
|
use std::thread;
|
||
|
use std::time::Duration;
|
||
|
|
||
|
fn generate_workout(intensity: u32, random_number: u32) {
|
||
|
// ANCHOR: here
|
||
|
let expensive_closure = |num| {
|
||
|
println!("calculating slowly...");
|
||
|
thread::sleep(Duration::from_secs(2));
|
||
|
num
|
||
|
};
|
||
|
// ANCHOR_END: here
|
||
|
|
||
|
if intensity < 25 {
|
||
|
println!("Today, do {} pushups!", expensive_closure(intensity));
|
||
|
println!("Next, do {} situps!", expensive_closure(intensity));
|
||
|
} else {
|
||
|
if random_number == 3 {
|
||
|
println!("Take a break today! Remember to stay hydrated!");
|
||
|
} else {
|
||
|
println!(
|
||
|
"Today, run for {} minutes!",
|
||
|
expensive_closure(intensity)
|
||
|
);
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
|
||
|
fn main() {
|
||
|
let simulated_user_specified_value = 10;
|
||
|
let simulated_random_number = 7;
|
||
|
|
||
|
generate_workout(simulated_user_specified_value, simulated_random_number);
|
||
|
}
|