rls_analysis/
util.rs

1#[cfg(unix)]
2pub fn get_resident() -> Option<usize> {
3    use std::fs::File;
4    use std::io::Read;
5
6    let field = 1;
7    let mut f = File::open("/proc/self/statm").ok()?;
8    let mut contents = String::new();
9    f.read_to_string(&mut contents).ok()?;
10    let s = contents.split_whitespace().nth(field)?;
11    let npages = s.parse::<usize>().ok()?;
12    Some(npages * 4096)
13}
14
15#[cfg(not(unix))]
16pub fn get_resident() -> Option<usize> {
17    None
18}