use std::thread;
use std::time::Duration;
use many_cpus::SystemHardware;
fn main() {
if std::env::var("IS_TESTING").is_ok() {
println!("Running in testing mode - exiting immediately to prevent infinite loop");
return;
}
let hw = SystemHardware::current();
let max_processors = hw.max_processor_count();
let max_memory_regions = hw.max_memory_region_count();
println!(
"This system can support up to {max_processors} processors in {max_memory_regions} memory regions"
);
loop {
let current_processor_id = hw.current_processor_id();
let current_memory_region_id = hw.current_memory_region_id();
println!(
"Thread executing on processor {current_processor_id} in memory region {current_memory_region_id}"
);
thread::sleep(Duration::from_secs(1));
}
}