Fix build on *BSD, illumos, etc. (#6456)

* nu-path: use 'linux' code on all non-macOS unix

* nu-command: cfg() the Ps command to platforms it's actually implemented on

* nu-system: cfg() the Ps test to the platforms Ps is implemented on
This commit is contained in:
unrelentingtech
2022-09-01 03:34:26 +03:00
committed by GitHub
parent 4858a9a817
commit b27148d14b
5 changed files with 50 additions and 26 deletions

View File

@ -1,27 +1,32 @@
use std::thread::available_parallelism;
use std::time::Duration;
fn main() {
let cores = match available_parallelism() {
Ok(p) => p.get(),
Err(_) => 1usize,
};
for run in 1..=10 {
for proc in nu_system::collect_proc(Duration::from_millis(100), false) {
if proc.cpu_usage() > 0.00001 {
println!(
"{} - {} - {} - {} - {:.2}% - {}M - {}M - {} procs",
run,
proc.pid(),
proc.name(),
proc.status(),
proc.cpu_usage() / cores as f64,
proc.mem_size() / (1024 * 1024),
proc.virtual_size() / (1024 * 1024),
cores,
)
#[cfg(any(
target_os = "android",
target_os = "linux",
target_os = "macos",
target_os = "windows"
))]
{
let cores = match std::thread::available_parallelism() {
Ok(p) => p.get(),
Err(_) => 1usize,
};
for run in 1..=10 {
for proc in nu_system::collect_proc(std::time::Duration::from_millis(100), false) {
if proc.cpu_usage() > 0.00001 {
println!(
"{} - {} - {} - {} - {:.2}% - {}M - {}M - {} procs",
run,
proc.pid(),
proc.name(),
proc.status(),
proc.cpu_usage() / cores as f64,
proc.mem_size() / (1024 * 1024),
proc.virtual_size() / (1024 * 1024),
cores,
)
}
}
std::thread::sleep(std::time::Duration::from_millis(1000));
}
std::thread::sleep(std::time::Duration::from_millis(1000));
}
}