pub struct Tracker { /* private fields */ }Implementations§
Source§impl Tracker
impl Tracker
pub fn new() -> Self
Sourcepub fn with_config(config: TrackerConfig) -> Self
pub fn with_config(config: TrackerConfig) -> Self
Construct a Tracker from a global_tracking::TrackerConfig.
This is the bridge between the user-facing GlobalTrackerConfig.tracker
field and the internal Tracker construction. Currently the underlying
MemoryTracker does not honor max_allocations (it is unbounded by
design), so this method consumes the config without applying that knob.
enable_statistics is implicitly always true — the tracker always
collects statistics; future implementations may gate this.
The method exists so that GlobalTracker::with_config does not silently
discard its config.tracker field.
pub fn global() -> Self
pub fn with_system_monitoring(self) -> Self
pub fn with_sampling(self, config: SamplingConfig) -> Self
pub fn with_auto_export(self, path: &str) -> Self
pub fn track_as<T: Trackable>( &self, var: &T, name: &str, file: &str, line: u32, module_path: &str, )
Sourcepub fn track_clone(
&self,
source_ptr: usize,
target_ptr: usize,
size: usize,
var_name: Option<String>,
type_name: Option<String>,
file: &str,
line: u32,
module_path: &str,
)
pub fn track_clone( &self, source_ptr: usize, target_ptr: usize, size: usize, var_name: Option<String>, type_name: Option<String>, file: &str, line: u32, module_path: &str, )
Track a clone operation
pub fn track_deallocation(&self, ptr: usize) -> TrackingResult<bool>
pub fn events(&self) -> Vec<MemoryEvent>
pub fn event_store(&self) -> &Arc<EventStore> ⓘ
pub fn stats(&self) -> MemoryStats
pub fn analyze(&self) -> AnalysisReport
pub fn inner(&self) -> &Arc<MemoryTracker> ⓘ
pub fn elapsed(&self) -> Duration
pub fn system_snapshots(&self) -> Vec<SystemSnapshot>
pub fn current_system_snapshot(&self) -> SystemSnapshot
Trait Implementations§
Auto Trait Implementations§
impl !RefUnwindSafe for Tracker
impl !UnwindSafe for Tracker
impl Freeze for Tracker
impl Send for Tracker
impl Sync for Tracker
impl Unpin for Tracker
impl UnsafeUnpin for Tracker
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