pub struct MemoryProfile {
pub module_name: String,
pub initial_heap: u64,
pub peak_heap: u64,
pub current_heap: u64,
pub snapshots: Vec<MemorySnapshot>,
pub growth_events: Vec<MemoryGrowthEvent>,
}Expand description
Memory profile for a WASM module
Fields§
§module_name: StringModule name
initial_heap: u64Initial heap size
peak_heap: u64Peak heap size
current_heap: u64Current heap size
snapshots: Vec<MemorySnapshot>Memory snapshots over time
growth_events: Vec<MemoryGrowthEvent>Growth events
Implementations§
Source§impl MemoryProfile
impl MemoryProfile
Sourcepub fn new(module_name: impl Into<String>, initial_heap: u64) -> Self
pub fn new(module_name: impl Into<String>, initial_heap: u64) -> Self
Create a new memory profile
Sourcepub fn snapshot(
&mut self,
heap_bytes: u64,
timestamp_ms: u64,
label: Option<String>,
)
pub fn snapshot( &mut self, heap_bytes: u64, timestamp_ms: u64, label: Option<String>, )
Record a memory snapshot
Sourcepub fn exceeds_threshold(&self, threshold_bytes: u64) -> bool
pub fn exceeds_threshold(&self, threshold_bytes: u64) -> bool
Check if memory exceeds threshold
Sourcepub fn growth_percentage(&self) -> f64
pub fn growth_percentage(&self) -> f64
Get memory growth percentage
Trait Implementations§
Source§impl Clone for MemoryProfile
impl Clone for MemoryProfile
Source§fn clone(&self) -> MemoryProfile
fn clone(&self) -> MemoryProfile
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for MemoryProfile
impl Debug for MemoryProfile
Source§impl<'de> Deserialize<'de> for MemoryProfile
impl<'de> Deserialize<'de> for MemoryProfile
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Auto Trait Implementations§
impl Freeze for MemoryProfile
impl RefUnwindSafe for MemoryProfile
impl Send for MemoryProfile
impl Sync for MemoryProfile
impl Unpin for MemoryProfile
impl UnsafeUnpin for MemoryProfile
impl UnwindSafe for MemoryProfile
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§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