#[repr(u32)]
#[non_exhaustive]
pub enum Resource {
Show 16 variants RLIMIT_AS, RLIMIT_CORE, RLIMIT_CPU, RLIMIT_DATA, RLIMIT_FSIZE, RLIMIT_NOFILE, RLIMIT_STACK, RLIMIT_LOCKS, RLIMIT_MEMLOCK, RLIMIT_MSGQUEUE, RLIMIT_NICE, RLIMIT_NPROC, RLIMIT_RSS, RLIMIT_RTPRIO, RLIMIT_RTTIME, RLIMIT_SIGPENDING,
}
Expand description

Types of process resources.

The Resource enum is platform dependent. Check different platform manuals for more details. Some platform links have been provided for easier reference (non-exhaustive).

Variants (Non-exhaustive)

This enum is marked as non-exhaustive
Non-exhaustive enums could have additional variants added in future. Therefore, when matching against variants of non-exhaustive enums, an extra wildcard arm must be added to account for any future variants.

RLIMIT_AS

The maximum amount (in bytes) of virtual memory the process is allowed to map.

RLIMIT_CORE

The largest size (in bytes) core(5) file that may be created.

RLIMIT_CPU

The maximum amount of cpu time (in seconds) to be used by each process.

RLIMIT_DATA

The maximum size (in bytes) of the data segment for a process

RLIMIT_FSIZE

The largest size (in bytes) file that may be created.

RLIMIT_NOFILE

The maximum number of open files for this process.

RLIMIT_STACK

The maximum size (in bytes) of the stack segment for a process.

RLIMIT_LOCKS

A limit on the combined number of flock locks and fcntl leases that this process may establish.

RLIMIT_MEMLOCK

The maximum size (in bytes) which a process may lock into memory using the mlock(2) system call.

RLIMIT_MSGQUEUE

A limit on the number of bytes that can be allocated for POSIX message queues for the real user ID of the calling process.

RLIMIT_NICE

A ceiling to which the process’s nice value can be raised using setpriority or nice.

RLIMIT_NPROC

The maximum number of simultaneous processes for this user id.

RLIMIT_RSS

When there is memory pressure and swap is available, prioritize eviction of a process’ resident pages beyond this amount (in bytes).

RLIMIT_RTPRIO

A ceiling on the real-time priority that may be set for this process using sched_setscheduler and sched_set‐ param.

RLIMIT_RTTIME

A limit (in microseconds) on the amount of CPU time that a process scheduled under a real-time scheduling policy may con‐ sume without making a blocking system call.

RLIMIT_SIGPENDING

A limit on the number of signals that may be queued for the real user ID of the calling process.

Trait Implementations

Returns a copy of the value. Read more

Performs copy-assignment from source. Read more

Formats the value using the given formatter. Read more

Feeds this value into the given Hasher. Read more

Feeds a slice of this type into the given Hasher. Read more

This method returns an Ordering between self and other. Read more

Compares and returns the maximum of two values. Read more

Compares and returns the minimum of two values. Read more

Restrict a value to a certain interval. Read more

This method tests for self and other values to be equal, and is used by ==. Read more

This method tests for !=.

This method returns an ordering between self and other values if one exists. Read more

This method tests less than (for self and other) and is used by the < operator. Read more

This method tests less than or equal to (for self and other) and is used by the <= operator. Read more

This method tests greater than (for self and other) and is used by the > operator. Read more

This method tests greater than or equal to (for self and other) and is used by the >= operator. Read more

Auto Trait Implementations

Blanket Implementations

Gets the TypeId of self. Read more

Immutably borrows from an owned value. Read more

Mutably borrows from an owned value. Read more

Convert Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>. Box<dyn Any> can then be further downcast into Box<ConcreteType> where ConcreteType implements Trait. Read more

Convert Rc<Trait> (where Trait: Downcast) to Rc<Any>. Rc<Any> can then be further downcast into Rc<ConcreteType> where ConcreteType implements Trait. Read more

Convert &Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot generate &Any’s vtable from &Trait’s. Read more

Convert &mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot generate &mut Any’s vtable from &mut Trait’s. Read more

Convert Arc<Trait> (where Trait: Downcast) to Arc<Any>. Arc<Any> can then be further downcast into Arc<ConcreteType> where ConcreteType implements Trait. Read more

Use this to cast from one trait object type to another. Read more

Use this to upcast a trait to one of its supertraits. Read more

Use this to cast from one trait object type to another. This method is more customizable than the dyn_cast method. Here you can also specify the “source” trait from which the cast is defined. This can for example allow using casts from a supertrait of the current trait object. Read more

Use this to cast from one trait object type to another. With this method the type parameter is a config type that uniquely specifies which cast should be preformed. Read more

Compare self to key and return true if they are equal.

Returns the argument unchanged.

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more

Instruments this type with the current Span, returning an Instrumented wrapper. Read more

Calls U::from(self).

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

Should always be Self

The resulting type after obtaining ownership.

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

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

The type returned in the event of a conversion error.

Performs the conversion.

The type returned in the event of a conversion error.

Performs the conversion.

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more