pub struct ShellEfficiencyFacts { /* private fields */ }Expand description
What crate::NativeEffectShell::collect_terminal_frames and
::reclassify_foreground have done since the last Self::take,
handed to the caller and reset by it. See the module doc for why this
carries plain facts rather than a computed distribution.
Implementations§
Source§impl ShellEfficiencyFacts
impl ShellEfficiencyFacts
Sourcepub fn record_terminal_state_capture(&mut self, elapsed: Duration)
pub fn record_terminal_state_capture(&mut self, elapsed: Duration)
Record one real terminal_state() call – the sequence gate already
let it through, so elapsed is the actual render-and-clone cost the
module doc on collect_terminal_frames describes.
Sourcepub fn record_terminal_state_skip(&mut self)
pub fn record_terminal_state_skip(&mut self)
Record one session the cheap sequence gate skipped this call.
Sourcepub fn record_terminal_frame_published(&mut self, bytes: u64)
pub fn record_terminal_frame_published(&mut self, bytes: u64)
Record one published TerminalFrame’s wire-relevant byte size.
Sourcepub fn record_foreground_probe(&mut self, timing: ForegroundProbeTiming)
pub fn record_foreground_probe(&mut self, timing: ForegroundProbeTiming)
Record one observe_foreground_timed() OS process-tree probe,
successful or not – the walk was paid for either way. Increments
foreground_probes by exactly one call, and records each of the
three timing components into its own series – see the field docs
above for why they stay separate.
Sourcepub fn take(&mut self) -> Self
pub fn take(&mut self) -> Self
Hand the caller everything recorded since the last take, and reset
this struct back to empty – see the module doc for why
gate4agent-runtime-native is the only place that can do anything
with what this returns.