Trait cgroups_rs::Controller[][src]

pub trait Controller {
    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 tasks(&self) -> Vec<CgroupPid>;
fn v2(&self) -> bool; }

A Controller is a subsystem attached to the control group.

Implementors are able to control certain aspects of a control group.

Required methods

fn path(&self) -> &Path[src]

The file system path to the controller.

fn apply(&self, res: &Resources) -> Result<()>[src]

Apply a set of resources to the Controller, invoking its internal functions to pass the kernel the information.

fn create(&self)[src]

Create this controller

fn exists(&self) -> bool[src]

Does this controller already exist?

fn set_notify_on_release(&self, enable: bool) -> Result<()>[src]

Set notify_on_release

fn set_release_agent(&self, path: &str) -> Result<()>[src]

Set release_agent

fn delete(&self) -> Result<()>[src]

Delete the controller.

fn add_task(&self, pid: &CgroupPid) -> Result<()>[src]

Attach a task to this controller.

fn add_task_by_tgid(&self, pid: &CgroupPid) -> Result<()>[src]

Attach a task to this controller.

fn tasks(&self) -> Vec<CgroupPid>[src]

Get the list of tasks that this controller has.

fn v2(&self) -> bool[src]

Loading content...

Implementors

impl<T> Controller for T where
    T: ControllerInternal, 
[src]

fn apply(&self, res: &Resources) -> Result<()>[src]

Apply a set of resources to the Controller, invoking its internal functions to pass the kernel the information.

fn create(&self)[src]

Create this controller

fn set_notify_on_release(&self, enable: bool) -> Result<()>[src]

Set notify_on_release

fn set_release_agent(&self, path: &str) -> Result<()>[src]

Set release_agent

fn exists(&self) -> bool[src]

Does this controller already exist?

fn delete(&self) -> Result<()>[src]

Delete the controller.

fn add_task(&self, pid: &CgroupPid) -> Result<()>[src]

Attach a task to this controller.

fn add_task_by_tgid(&self, pid: &CgroupPid) -> Result<()>[src]

Attach a task to this controller by thread group id.

fn tasks(&self) -> Vec<CgroupPid>[src]

Get the list of tasks that this controller has.

Loading content...