pub trait Controller {
Show 14 methods
// Required methods
fn path(&self) -> &Path;
fn apply(&self, res: &Resources) -> Result<()>;
fn create(&self);
fn exists(&self) -> bool;
fn set_notify_on_release(&self, enable: bool) -> Result<()>;
fn set_release_agent(&self, path: &str) -> Result<()>;
fn delete(&self) -> Result<()>;
fn add_task(&self, pid: &CgroupPid) -> Result<()>;
fn add_task_by_tgid(&self, pid: &CgroupPid) -> Result<()>;
fn set_cgroup_type(&self, cgroup_type: &str) -> Result<()>;
fn get_cgroup_type(&self) -> Result<String>;
fn tasks(&self) -> Vec<CgroupPid>;
fn procs(&self) -> Vec<CgroupPid>;
fn v2(&self) -> bool;
}
Expand description
A Controller is a subsystem attached to the control group.
Implementors are able to control certain aspects of a control group.
Required Methods§
Sourcefn apply(&self, res: &Resources) -> Result<()>
fn apply(&self, res: &Resources) -> Result<()>
Apply a set of resources to the Controller, invoking its internal functions to pass the kernel the information.
Sourcefn set_notify_on_release(&self, enable: bool) -> Result<()>
fn set_notify_on_release(&self, enable: bool) -> Result<()>
Set notify_on_release
Sourcefn set_release_agent(&self, path: &str) -> Result<()>
fn set_release_agent(&self, path: &str) -> Result<()>
Set release_agent
Sourcefn add_task_by_tgid(&self, pid: &CgroupPid) -> Result<()>
fn add_task_by_tgid(&self, pid: &CgroupPid) -> Result<()>
Attach a task to this controller.
Sourcefn set_cgroup_type(&self, cgroup_type: &str) -> Result<()>
fn set_cgroup_type(&self, cgroup_type: &str) -> Result<()>
set cgroup type.
Sourcefn get_cgroup_type(&self) -> Result<String>
fn get_cgroup_type(&self) -> Result<String>
get cgroup type.