pub struct PerformanceMonitor {
pub metrics: HashMap<String, PerformanceMetric>,
pub budgets: HashMap<String, Duration>,
pub enabled: bool,
}Expand description
Performance monitor for tracking and optimizing performance
Fields§
§metrics: HashMap<String, PerformanceMetric>§budgets: HashMap<String, Duration>§enabled: boolImplementations§
Source§impl PerformanceMonitor
impl PerformanceMonitor
Sourcepub fn is_enabled(&self) -> bool
pub fn is_enabled(&self) -> bool
Check if monitoring is enabled
Sourcepub fn set_enabled(&mut self, enabled: bool)
pub fn set_enabled(&mut self, enabled: bool)
Enable or disable monitoring
Sourcepub fn start_timer(&mut self, name: &str)
pub fn start_timer(&mut self, name: &str)
Start timing an operation
Sourcepub fn get_metrics(&self) -> &HashMap<String, PerformanceMetric>
pub fn get_metrics(&self) -> &HashMap<String, PerformanceMetric>
Get all performance metrics
Sourcepub fn set_budget(&mut self, name: &str, budget: Duration)
pub fn set_budget(&mut self, name: &str, budget: Duration)
Set a performance budget for an operation
Sourcepub fn is_over_budget(&self, name: &str) -> bool
pub fn is_over_budget(&self, name: &str) -> bool
Check if an operation is over budget
Sourcepub fn get_optimization_suggestions(&self) -> Vec<String>
pub fn get_optimization_suggestions(&self) -> Vec<String>
Get optimization suggestions
Sourcepub fn get_performance_report(&self) -> PerformanceReport
pub fn get_performance_report(&self) -> PerformanceReport
Get performance report
Trait Implementations§
Source§impl Clone for PerformanceMonitor
impl Clone for PerformanceMonitor
Source§fn clone(&self) -> PerformanceMonitor
fn clone(&self) -> PerformanceMonitor
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 moreAuto Trait Implementations§
impl Freeze for PerformanceMonitor
impl RefUnwindSafe for PerformanceMonitor
impl Send for PerformanceMonitor
impl Sync for PerformanceMonitor
impl Unpin for PerformanceMonitor
impl UnwindSafe for PerformanceMonitor
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 moreSource§impl<T> Key for Twhere
T: Clone,
impl<T> Key for Twhere
T: Clone,
Source§impl<T> Pointable for T
impl<T> Pointable for T
Source§impl<T> PolicyExt for Twhere
T: ?Sized,
impl<T> PolicyExt for Twhere
T: ?Sized,
Source§impl<T> SerializableKey for T
impl<T> SerializableKey for T
Source§impl<T> StorageAccess<T> for T
impl<T> StorageAccess<T> for T
Source§fn as_borrowed(&self) -> &T
fn as_borrowed(&self) -> &T
Borrows the value.
Source§fn into_taken(self) -> T
fn into_taken(self) -> T
Takes the value.