pub struct Recorder { /* private fields */ }Expand description
Session-scoped counter storage.
One per ProxySession, shared by that session’s forwarding tasks
through Arc (ForwardCtx is #[derive(Clone)] and cloned per task,
session.rs:191-229), so concurrently running sessions in one test
binary cannot see each other’s increments. That is what makes
objects_elided == 0 assertable at all.
Storage is atomics plus a [AtomicU32; 128] histogram — 512 bytes per
session. A release sample costs four relaxed atomic operations (sum,
count, max, one bucket) on a path that already did a write_all;
every other counter costs one.
Implementations§
Trait Implementations§
Auto Trait Implementations§
impl !Freeze for Recorder
impl RefUnwindSafe for Recorder
impl Send for Recorder
impl Sync for Recorder
impl Unpin for Recorder
impl UnsafeUnpin for Recorder
impl UnwindSafe for Recorder
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