pub struct MemoryQuotaTracker { /* private fields */ }
Expand description
Memory data tracker
Instance of the memory quota system.
Usually found as Arc<MemoryQuotaTracker>
.
Implementations§
Source§impl MemoryQuotaTracker
impl MemoryQuotaTracker
Sourcepub fn new<R: Spawn>(
runtime: &R,
config: Config,
) -> Result<Arc<Self>, StartupError>
pub fn new<R: Spawn>( runtime: &R, config: Config, ) -> Result<Arc<Self>, StartupError>
Set up a new MemoryDataTracker
Sourcepub fn reconfigure(
&self,
new_config: Config,
how: Reconfigure,
) -> Result<(), ReconfigureError>
pub fn reconfigure( &self, new_config: Config, how: Reconfigure, ) -> Result<(), ReconfigureError>
Reconfigure
Sourcepub fn used_current_approx(&self) -> Result<usize, TrackerCorrupted>
pub fn used_current_approx(&self) -> Result<usize, TrackerCorrupted>
Returns an estimate of the total memory use
The returned value is:
- Approximate.
- A snapshot as of the current moment (and there is no way to await changes)
- Always
usize::MAX
for a no-op tracker
Sourcepub fn new_account(
self: &Arc<Self>,
parent: Option<&Account>,
) -> Result<Account>
pub fn new_account( self: &Arc<Self>, parent: Option<&Account>, ) -> Result<Account>
Make a new Account
To actually record memory usage, a Participant must be added.
At most call sites, take an Account
rather than a MemoryQuotaTracker
,
and use Account::new_child()
.
That improves the ability to manage the hierarchy of Participants.
Sourcepub fn new_noop() -> Arc<MemoryQuotaTracker>
pub fn new_noop() -> Arc<MemoryQuotaTracker>
Obtain a new MemoryQuotaTracker
that doesn’t track anything and never reclaims
Trait Implementations§
Auto Trait Implementations§
impl !Freeze for MemoryQuotaTracker
impl RefUnwindSafe for MemoryQuotaTracker
impl Send for MemoryQuotaTracker
impl Sync for MemoryQuotaTracker
impl Unpin for MemoryQuotaTracker
impl UnwindSafe for MemoryQuotaTracker
Blanket Implementations§
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>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> 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