pub struct TimerPerformance { /* private fields */ }Expand description
Completed instruction and memory-page measurements split by callback role.
Each interval covers the accepted ic-timers callback envelope: it starts
before callback acceptance and ends after completion processing and any
successor binding. It is not an exclusive measurement of consumer code.
Start/end page reads bracket the instruction interval from outside.
Instruction summaries retain observation ordering and track actual overflow:
an exactly reached u64::MAX is still exact. Use the summary’s checked
mean() or aggregate saturation flags rather than inferring overflow from
its clipped total. Event counters and page-sample counts remain conservatively
saturated at their numeric cap.
A terminal DeclarationLifetime::RemoveWhenStopped
callback can remove its declaration before this final record is retained;
no timer then remains in the inventory to expose that sample.
Implementations§
Source§impl TimerPerformance
impl TimerPerformance
Sourcepub const fn scheduler_instructions(self) -> MeasurementSummary
pub const fn scheduler_instructions(self) -> MeasurementSummary
Return normally completed accepted scheduler-envelope measurements.
Sourcepub const fn work_instructions(self) -> MeasurementSummary
pub const fn work_instructions(self) -> MeasurementSummary
Return normally completed accepted work-envelope measurements.
Sourcepub const fn scheduler_memory_pages(self) -> MemoryPageSummary
pub const fn scheduler_memory_pages(self) -> MemoryPageSummary
Return normally completed accepted scheduler-envelope page observations.
Sourcepub const fn work_memory_pages(self) -> MemoryPageSummary
pub const fn work_memory_pages(self) -> MemoryPageSummary
Return normally completed accepted work-envelope page observations.