Struct wasmer_wasix::os::task::backoff::WasiProcessCpuBackoff
source · pub struct WasiProcessCpuBackoff {
cpu_backoff_wakers: HashMap<u64, Waker>,
cpu_backoff_waker_seed: u64,
cpu_backoff_time: Duration,
cpu_run_cool_off: u128,
max_cpu_backoff_time: Duration,
max_cpu_cool_off_time: Duration,
}
Expand description
Represents the CPU backoff properties for a process which will be used to determine if the CPU should be throttled or not
Fields§
§cpu_backoff_wakers: HashMap<u64, Waker>
Referenced list of wakers that will be triggered when the process goes active again due to a token being acquired
cpu_backoff_waker_seed: u64
Seed used to register CPU release wakers
cpu_backoff_time: Duration
The amount of CPU backoff time we are currently waiting
cpu_run_cool_off: u128
When the backoff is reset the cool-off period will keep things running for a short period of time extra
max_cpu_backoff_time: Duration
Maximum amount of CPU backoff time before it starts capping
max_cpu_cool_off_time: Duration
Amount of time the CPU should cool-off after exiting run before it begins a backoff
Implementations§
Trait Implementations§
Auto Trait Implementations§
impl Freeze for WasiProcessCpuBackoff
impl RefUnwindSafe for WasiProcessCpuBackoff
impl Send for WasiProcessCpuBackoff
impl Sync for WasiProcessCpuBackoff
impl Unpin for WasiProcessCpuBackoff
impl UnwindSafe for WasiProcessCpuBackoff
Blanket Implementations§
§impl<T> ArchivePointee for T
impl<T> ArchivePointee for T
§type ArchivedMetadata = ()
type ArchivedMetadata = ()
The archived version of the pointer metadata for this type.
§fn pointer_metadata(
_: &<T as ArchivePointee>::ArchivedMetadata,
) -> <T as Pointee>::Metadata
fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, ) -> <T as Pointee>::Metadata
Converts some archived metadata to the pointer metadata for itself.
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
source§impl<T> IntoEither for T
impl<T> IntoEither for T
source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
Converts
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moresource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
Converts
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read more§impl<T> LayoutRaw for T
impl<T> LayoutRaw for T
§fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
Returns the layout of the type.
§impl<T> Pointable for T
impl<T> Pointable for T
§impl<T> Pointee for T
impl<T> Pointee for T
§impl<T> Upcastable for T
impl<T> Upcastable for T
fn upcast_any_ref(&self) -> &(dyn Any + 'static)
fn upcast_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn upcast_any_box(self: Box<T>) -> Box<dyn Any>
§impl<T> Upcastable for T
impl<T> Upcastable for T
§fn upcast_any_ref(&self) -> &(dyn Any + 'static)
fn upcast_any_ref(&self) -> &(dyn Any + 'static)
upcast ref
§fn upcast_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn upcast_any_mut(&mut self) -> &mut (dyn Any + 'static)
upcast mut ref
§fn upcast_any_box(self: Box<T>) -> Box<dyn Any>
fn upcast_any_box(self: Box<T>) -> Box<dyn Any>
upcast boxed dyn