Struct cgroups_rs::MemoryResources[][src]

pub struct MemoryResources {
    pub kernel_memory_limit: Option<i64>,
    pub memory_hard_limit: Option<i64>,
    pub memory_soft_limit: Option<i64>,
    pub kernel_tcp_memory_limit: Option<i64>,
    pub memory_swap_limit: Option<i64>,
    pub swappiness: Option<u64>,
    pub attrs: HashMap<&'static str, String>,
}

Resource limits for the memory subsystem.

Fields

kernel_memory_limit: Option<i64>

How much memory (in bytes) can the kernel consume.

memory_hard_limit: Option<i64>

Upper limit of memory usage of the control group’s tasks.

memory_soft_limit: Option<i64>

How much memory the tasks in the control group can use when the system is under memory pressure.

kernel_tcp_memory_limit: Option<i64>

How much of the kernel’s memory (in bytes) can be used for TCP-related buffers.

memory_swap_limit: Option<i64>

How much memory and swap together can the tasks in the control group use.

swappiness: Option<u64>

Controls the tendency of the kernel to swap out parts of the address space of the tasks to disk. Lower value implies less likely.

Note, however, that a value of zero does not mean the process is never swapped out. Use the traditional mlock(2) system call for that purpose.

attrs: HashMap<&'static str, String>

Customized key-value attributes

Usage:

let resource = &mut cgroups_rs::Resources::default();
resource.memory.attrs.insert("memory.numa_balancing", "true".to_string());
// apply here

Trait Implementations

impl Clone for MemoryResources[src]

impl Debug for MemoryResources[src]

impl Default for MemoryResources[src]

impl Eq for MemoryResources[src]

impl PartialEq<MemoryResources> for MemoryResources[src]

impl StructuralEq for MemoryResources[src]

impl StructuralPartialEq for MemoryResources[src]

Auto Trait Implementations

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.