Struct SubscriberHandle
pub struct SubscriberHandle {
pub interval: Duration,
last_sent_at: Mutex<RawMutex, Option<Instant>>,
pub subscription_id: u64,
sender: UnboundedSender<LiveMetrics>,
}Expand description
A handle to a single live-metrics subscription.
Wraps the sender half of a tokio unbounded MPSC channel along with the
subscriber’s desired emission interval. The interval is stored so the
IntrospectionStream can honor per-subscriber cadence when dispatching.
Fields§
§interval: DurationDesired emission interval for this subscriber.
last_sent_at: Mutex<RawMutex, Option<Instant>>§subscription_id: u64Unique subscription identifier (for wire-protocol correlation and teardown).
sender: UnboundedSender<LiveMetrics>Implementations§
§impl SubscriberHandle
impl SubscriberHandle
pub fn subscription_id(&self) -> u64
pub fn subscription_id(&self) -> u64
Subscription identifier.
Auto Trait Implementations§
impl !Freeze for SubscriberHandle
impl !RefUnwindSafe for SubscriberHandle
impl Send for SubscriberHandle
impl Sync for SubscriberHandle
impl Unpin for SubscriberHandle
impl UnwindSafe for SubscriberHandle
Blanket Implementations§
§impl<T> ArchivePointee for T
impl<T> ArchivePointee for T
§type ArchivedMetadata = ()
type ArchivedMetadata = ()
The archived version of the pointer metadata for this type.
§fn pointer_metadata(
_: &<T as ArchivePointee>::ArchivedMetadata,
) -> <T as Pointee>::Metadata
fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, ) -> <T as Pointee>::Metadata
Converts some archived metadata to the pointer metadata for itself.
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
§impl<F, W, T, D> Deserialize<With<T, W>, D> for F
impl<F, W, T, D> Deserialize<With<T, W>, D> for F
§fn deserialize(
&self,
deserializer: &mut D,
) -> Result<With<T, W>, <D as Fallible>::Error>
fn deserialize( &self, deserializer: &mut D, ) -> Result<With<T, W>, <D as Fallible>::Error>
Deserializes using the given deserializer
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§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§impl<T> LayoutRaw for T
impl<T> LayoutRaw for T
§fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
Gets the layout of the type.