Struct rlimit::ProcLimits

source ·
pub struct ProcLimits {
Show 16 fields pub max_cpu_time: Option<ProcLimit>, pub max_file_size: Option<ProcLimit>, pub max_data_size: Option<ProcLimit>, pub max_stack_size: Option<ProcLimit>, pub max_core_file_size: Option<ProcLimit>, pub max_resident_set: Option<ProcLimit>, pub max_processes: Option<ProcLimit>, pub max_open_files: Option<ProcLimit>, pub max_locked_memory: Option<ProcLimit>, pub max_address_space: Option<ProcLimit>, pub max_file_locks: Option<ProcLimit>, pub max_pending_signals: Option<ProcLimit>, pub max_msgqueue_size: Option<ProcLimit>, pub max_nice_priority: Option<ProcLimit>, pub max_realtime_priority: Option<ProcLimit>, pub max_realtime_timeout: Option<ProcLimit>,
}
Available on Linux or Android only.
Expand description

A process’s resource limits. It is parsed from the proc filesystem.

See https://man7.org/linux/man-pages/man5/proc.5.html.

Fields§

§max_cpu_time: Option<ProcLimit>

Max cpu time. See also Resource::CPU.

§max_file_size: Option<ProcLimit>

Max file size. See also Resource::FSIZE.

§max_data_size: Option<ProcLimit>

Max data size. See also Resource::DATA.

§max_stack_size: Option<ProcLimit>

Max stack size. See also Resource::STACK.

§max_core_file_size: Option<ProcLimit>

Max core file size. See also Resource::CORE.

§max_resident_set: Option<ProcLimit>

Max resident set. See also Resource::RSS.

§max_processes: Option<ProcLimit>

Max processes. See also Resource::NPROC.

§max_open_files: Option<ProcLimit>

Max open files. See also Resource::NOFILE.

§max_locked_memory: Option<ProcLimit>

Max locked memory. See also Resource::MEMLOCK.

§max_address_space: Option<ProcLimit>

Max address space. See also Resource::AS.

§max_file_locks: Option<ProcLimit>

Max file locks. See also Resource::LOCKS.

§max_pending_signals: Option<ProcLimit>

Max pending signals. See also Resource::SIGPENDING.

§max_msgqueue_size: Option<ProcLimit>

Max msgqueue size. See also Resource::MSGQUEUE.

§max_nice_priority: Option<ProcLimit>

Max nice priority. See also Resource::NICE.

§max_realtime_priority: Option<ProcLimit>

Max realtime priority. See also Resource::RTPRIO.

§max_realtime_timeout: Option<ProcLimit>

Max realtime timeout. See also Resource::RTTIME.

Implementations§

source§

impl ProcLimits

source

pub fn read_self() -> Result<Self>

Reads the current process’s resource limits from /proc/self/limits.

Errors

Returns an error if any IO operation failed.

Returns an error if the file format is invalid.

source

pub fn read_process(pid: pid_t) -> Result<Self>

Reads a process’s resource limits from /proc/[pid]/limits.

Errors

Returns an error if pid is negative.

Returns an error if any IO operation failed.

Returns an error if the file format is invalid.

Trait Implementations§

source§

impl Clone for ProcLimits

source§

fn clone(&self) -> ProcLimits

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for ProcLimits

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Default for ProcLimits

source§

fn default() -> ProcLimits

Returns the “default value” for a type. Read more

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for Twhere T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for Twhere T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for Twhere T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T, U> Into<U> for Twhere U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T> ToOwned for Twhere T: Clone,

§

type Owned = T

The resulting type after obtaining ownership.
source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
source§

impl<T, U> TryFrom<U> for Twhere U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for Twhere U: TryFrom<T>,

§

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

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.