cgroups-fs
Native Rust library for managing Linux Control Groups (cgroups).
This crate, curently, only supports the original, V1 hierarchy. You are welcome to contribute Cgroups V2 support.
Prior art
- cgroups - it does too many things (e.g. creates cgroups in the subsystems that I don't plan to use, parses control files that I don't plan to use).
Usage
First, add the following to your Cargo.toml
:
[dependencies]
cgroups-fs = "1.0"
Next, use it in your crate:
use cgroups_fs;
Examples
use cgroups_fs;
let my_cgroup = cgroups_fs::CgroupName("my-cgroup");
let my_cpu_cgroup = cgroups_fs::Cgroup::init(&my_cgroup, "cpu")?;
println!(
"The current CPU shares in `my-cgroup` control group is {}",
my_cpu_cgroup.get_value::<u64>("cpu.shares")
);
Please, find more examples in the documentation.
License
This project is licensed under either of
- Apache License, Version 2.0, (LICENSE-APACHE or http://www.apache.org/licenses/LICENSE-2.0)
- MIT license (LICENSE-MIT or http://opensource.org/licenses/MIT)
at your option.