pub struct ModuleResources { /* private fields */ }Expand description
Per-module resource tracking and quota enforcement.
Implementations§
Source§impl ModuleResources
impl ModuleResources
Sourcepub fn new(module_name: String, quota: ModuleQuota) -> Self
pub fn new(module_name: String, quota: ModuleQuota) -> Self
Creates a new module resource tracker.
Sourcepub fn record_call_start(&self) -> bool
pub fn record_call_start(&self) -> bool
Records a new call start.
Sourcepub fn record_call_end(&self)
pub fn record_call_end(&self)
Records a call completion.
Sourcepub fn set_memory_usage(&self, bytes: usize)
pub fn set_memory_usage(&self, bytes: usize)
Updates memory usage.
Sourcepub fn reset_second_counter(&self)
pub fn reset_second_counter(&self)
Resets the per-second counter (called by a background task).
Sourcepub fn memory_usage(&self) -> usize
pub fn memory_usage(&self) -> usize
Returns the current memory usage.
Sourcepub fn module_name(&self) -> &str
pub fn module_name(&self) -> &str
Returns the module name.
Trait Implementations§
Auto Trait Implementations§
impl !Freeze for ModuleResources
impl RefUnwindSafe for ModuleResources
impl Send for ModuleResources
impl Sync for ModuleResources
impl Unpin for ModuleResources
impl UnsafeUnpin for ModuleResources
impl UnwindSafe for ModuleResources
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