#[non_exhaustive]pub struct Counters {
pub announced: AtomicU64,
pub announced_closed: AtomicU64,
pub announced_bytes: AtomicU64,
pub subscriptions: AtomicU64,
pub subscriptions_closed: AtomicU64,
pub broadcasts: AtomicU64,
pub broadcasts_closed: AtomicU64,
pub bytes: AtomicU64,
pub frames: AtomicU64,
pub groups: AtomicU64,
}Expand description
Cumulative atomic counters for a single (tier, role) on a broadcast.
Every field is bumped from a RAII guard: the open counters on construction
and their _closed counterparts on drop. broadcasts / broadcasts_closed
are the per-(broadcast, session) subscription sentinel driven by
SessionBroadcasts (the first active subscription a session opens for the
broadcast bumps broadcasts, the last to close bumps broadcasts_closed),
so summed across sessions broadcasts - broadcasts_closed is the count of
distinct sessions currently subscribed.
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.announced: AtomicU64§announced_closed: AtomicU64§announced_bytes: AtomicU64Cumulative broadcast-name length summed over each announce and unannounce
of this broadcast. Counts the name, not the encoded message size, so it
doesn’t penalize the broadcast for hop/framing overhead. Kept separate
from bytes, which is media payload.
subscriptions: AtomicU64§subscriptions_closed: AtomicU64§broadcasts: AtomicU64§broadcasts_closed: AtomicU64§bytes: AtomicU64§frames: AtomicU64§groups: AtomicU64